#include <bits/stdc++.h>
using namespace std;
const long double EPS = 3e-16;
const long long MAXN = (1e5 + 2);
const long long INF = 1e9 + 7;
void file() {
  freopen(
      "choose"
      ".in",
      "r", stdin);
  if (0)
    freopen(
        "choose"
        ".out",
        "w", stdout);
}
long long n, m;
long long city[MAXN], tower[MAXN];
long long call(long long i, long long k) { return abs(city[i] - tower[k]); }
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie();
  cout.tie();
  long long i, j, k, ans = 0, x;
  cin >> n >> m;
  for (i = 1; i <= n; i++) {
    cin >> city[i];
  }
  for (i = 1; i <= m; i++) {
    cin >> tower[i];
  }
  k = 1;
  for (i = 1; i <= n; i++) {
    while (tower[k] == tower[k + 1]) k++;
    while (k < m && call(i, k) >= call(i, k + 1)) k++;
    ans = max(ans, call(i, k));
  }
  cout << ans;
  cout << endl;
  return 0;
}
