#include <bits/stdc++.h>
int a[100005], b[100005];
int mini(int a, int b) {
  if (a < b) {
    return a;
  }
  return b;
}
int main() {
  int n, m, i, j, max;
  scanf("%d %d", &n, &m);
  for (i = 0; i < n; i++) {
    scanf("%d", &a[i]);
  }
  for (i = 0; i < m; i++) {
    scanf("%d", &b[i]);
  }
  max = 0;
  if (a[0] < b[0]) {
    max = b[0] - a[0];
  }
  if (a[n - 1] - b[m - 1] > max) {
    max = a[n - 1] - b[m - 1];
  }
  i = 0;
  j = 0;
  while (a[i] < b[0]) {
    i++;
  }
  j = 0;
  while (i < n) {
    if (j == m - 1) {
      break;
    }
    if (a[i] >= b[j] && a[i] <= b[j + 1]) {
      if (mini(a[i] - b[j], b[j + 1] - a[i]) > max) {
        max = mini(a[i] - b[j], b[j + 1] - a[i]);
      }
      i++;
    } else {
      j++;
    }
  }
  printf("%d", max);
  return 0;
}
