#include <bits/stdc++.h>
using namespace std;
long long int arr[100001], arr2[100001], n, a;
bool chek(long long int x) {
  int i = 0, counter = 0;
  for (int q = 0; q < n; q++) {
    if (i >= a) break;
    if (abs(arr2[i] - arr[q]) <= x)
      counter++;
    else {
      i++;
      q--;
    }
  }
  return counter == n;
}
int main() {
  cin >> n >> a;
  for (int q = 0; q < n; q++) {
    cin >> arr[q];
  }
  for (int q = 0; q < a; q++) {
    cin >> arr2[q];
  }
  long long int l = 0,
                r = abs(min(arr2[0], arr[0])) + max(arr2[a - 1], arr[n - 1]),
                mid;
  while (l < r) {
    mid = (l + r) / 2;
    if (chek(mid)) {
      r = mid;
    } else {
      l = mid + 1;
    }
  }
  cout << l;
}
