#include using namespace std; #define rep(i, a, b) for (int i = a; i < b; i++) using ll = long long; int main(){ int n, m; cin >> n >> m; multiset st, st1; vector t(m); rep(i, 0, n) { int s; cin >> s; st.insert(s); } st1 = st; rep(i, 0, m) cin >> t[i]; int ans = 0, num = m; rep(i, 0, m) { auto it = st.lower_bound(t[i]); if(it == st.end()) { num = i; break; } st.erase(it); } sort(t.begin(), t.begin() + num); rep(i, 0, num) { auto it = st1.lower_bound(t[i]); if(it == st1.end()) break; ans = max(ans, *it - t[i]); st1.erase(it); } cout << ans << endl; }