Submission #228182

#TimeUsernameProblemLanguageResultExecution timeMemory
228182VEGAnnCipele (COCI18_cipele)C++14
90 / 90
54 ms2944 KiB
#include <bits/stdc++.h>
using namespace std;
const int N = 100100;
int a[N], b[N], n, m;

bool ok(int x){
    int ptr = 0;

    for (int i = 0; i < n; i++){
        while (ptr < m && abs(a[i] - b[ptr]) > x)
            ptr++;

        if (ptr >= m) return 0;

        ptr++;
    }

    return 1;
}

int main(){
    ios_base::sync_with_stdio(0); cin.tie(0);

    cin >> n >> m;

    for (int i = 0; i < n; i++)
        cin >> a[i];

    for (int i = 0; i < m; i++)
        cin >> b[i];

    sort(a, a + n);
    sort(b, b + m);

    if (n > m){
        for (int i = 0; i < n; i++)
            swap(a[i], b[i]);
        swap(n, m);
    }

    int l = 0, r = int(1e9);

    while (l < r){
        int md = (l + r) >> 1;

        if (ok(md))
            r = md;
        else l = md + 1;
    }

    cout << l;

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...