답안 #896528

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
896528 2024-01-01T15:40:16 Z vjudge1 Cipele (COCI18_cipele) C++17
90 / 90
34 ms 3040 KB
#include <bits/stdc++.h>
#define fi first
#define se second
using namespace std;
using ll = long long;
const int maxN = 1e5 + 1;   

int a[maxN], b[maxN], m, n;

void ReadInput()
{
    cin >> n >> m;
    for (int i = 1; i <= n; i++) cin >> a[i];
    for (int i = 1; i <= m; i++) cin >> b[i];

    if (n > m)
    {
        swap(m, n);
        swap(a, b);
    }

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

bool check(int x)
{
    int j = 1;
    for (int i = 1; i <= n; i++)
    {
        //cout << a[i] << ' ';
        while (j <= m && abs(b[j] - a[i]) > x) j++;
        // cout << b[j] << ' ';
        //cout << '\n';
        if (j == m + 1) return false;
        j++;
    }
    return true;
}

void Solve()
{
    int l = 0, r = 1e9;
    while (l <= r)
    {
        int mid = (l + r) / 2;
        if (check(mid))
            r = mid - 1;
        else
            l = mid + 1;
    }
    cout << l;
}

#define task ""
int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    //freopen(task".INP", "r", stdin);
    //freopen(task".OUT", "w", stdout);
    int T = 1;
    //cin >> T;
    while (T--)
    {
        ReadInput();
        Solve();
    }
}
# 결과 실행 시간 메모리 Grader output
1 Correct 19 ms 2648 KB Output is correct
2 Correct 32 ms 3040 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 31 ms 2940 KB Output is correct
2 Correct 32 ms 2896 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 3 ms 604 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 2 ms 604 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 348 KB Output is correct
2 Correct 2 ms 604 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 2 ms 604 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 2 ms 604 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 31 ms 2396 KB Output is correct
2 Correct 24 ms 2268 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 34 ms 2652 KB Output is correct
2 Correct 14 ms 2140 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 30 ms 2396 KB Output is correct
2 Correct 27 ms 2640 KB Output is correct