#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(0);
  int n, m;
  cin >> n >> m;
  vector<int> cities;
  for (int i = 0; i < n; ++i) {
    int temp;
    cin >> temp;
    cities.push_back(temp);
  }
  vector<int> cellNetworks;
  for (int i = 0; i < m; ++i) {
    int temp;
    cin >> temp;
    cellNetworks.push_back(temp);
  }
  int currentRadius;
  int minRadius = -1;
  for (int i = 0; i < n; ++i) {
    int left = 0;
    int right = m - 1;
    while (right > left + 1) {
      int mid = (left + right) / 2;
      if (cellNetworks[mid] <= cities[i]) {
        left = mid;
      } else
        right = mid;
    }
    currentRadius = min(abs(cellNetworks[right] - cities[i]),
                        abs(cities[i] - cellNetworks[left]));
    minRadius = max(minRadius, currentRadius);
  }
  cout << minRadius << endl;
  return 0;
}
