#include <bits/stdc++.h>
using namespace std;
const int MAX = 1e5 + 10;
int n, m, city[MAX], tow[MAX], ans, t;
int bs(int l, int r, int val) {
  if (r == l) return r;
  if (r - l == 1) {
    if (tow[r] <= val) return r;
    if (tow[l] >= val) return l;
    if (val - tow[l] >= tow[r] - val) return r;
    return l;
  }
  int mid = (l + r) / 2;
  if (tow[mid] > val)
    return bs(l, mid, val);
  else
    return bs(mid, r, val);
}
int main() {
  scanf("%d%d", &n, &m);
  for (int i = 0; i < n; i++) scanf("%d", &city[i]);
  for (int i = 0; i < m; i++) scanf("%d", &tow[i]);
  for (int i = 0; i < n; i++) {
    t = bs(t, m - 1, city[i]);
    ans = max(ans, abs(city[i] - tow[t]));
  }
  printf("%d\n", ans);
}
