func_code_string: #include <bits/stdc++.h>   using namespace std;   const int MAXN = 1e5 + 5;   const int oo = 0x3f3f3f3f;   inline long long read() {     char ch = getchar();     int x = 0, f = 1;     while (ch >  9  || ch <  0 ) {       if (ch ==  - ) f = -1;       ch = getchar();     }     while (ch >=  0  && ch <=  9 ) {       x = x * 10 + ch -  0 ;       ch = getchar();     }     return x * f;   }   long long N, M, a[MAXN], b[MAXN], leftt, rightt, mid, ans, cnt, st, nd;   bool vis[MAXN];   namespace solution {   void init() {     N = read();     M = read();     for (int i = 1; i <= N; i++) a[i] = read();     for (int i = 1; i <= M; i++) b[i] = read();     sort(a + 1, a + N + 1);     sort(b + 1, b + M + 1);   }   bool check(long long length) {     int t = 1;     for (int i = 1; i <= M; i++) {       st = b[i] - length;       nd = b[i] + length;       while (t <= N && a[t] >= st && a[t] <= nd) t++;     }     return t > N;   }   void slove() {     leftt = 0;     rightt = 2000000000;     while (leftt + 1 < rightt) {       mid = (leftt + rightt) >> 1;       if (check(mid))         rightt = mid;       else         leftt = mid;     }     if (check(leftt))       ans = leftt;     else       ans = rightt;   }   void output() { cout << ans << endl; }   }  // namespace solution   int main() {     using namespace solution;     init();     slove();     output();     return 0;   }   