제출 #756588

#제출 시각아이디문제언어결과실행 시간메모리
756588PringCipele (COCI18_cipele)C++14
45 / 90
421 ms596 KiB
#include <bits/stdc++.h> using namespace std; #define int long long typedef pair<int, int> pii; const int MXN = 5005; int n, m, a[MXN], b[MXN]; bool flag; bitset<MXN> bb; bool check(int x) { bb.reset(); for (int i = 0; i < m; i++) { bool flag = true; for (int j = 0; j < n; j++) { if (bb[j]) continue; if (abs(a[j] - b[i]) <= x) { bb[j] = true; flag = false; break; } } if (flag) return false; } return true; } int32_t main() { cin.tie(0) -> sync_with_stdio(false); cin >> n >> m; flag = (n >= m); if (flag) { for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < m; i++) cin >> b[i]; } else { for (int i = 0; i < n; i++) cin >> b[i]; for (int i = 0; i < m; i++) cin >> a[i]; swap(n, m); } sort(a, a + n); sort(b, b + m); int l = -1, r = INT_MAX; while (l + 1 < r) { int mid = (l + r) >> 1; (check(mid) ? r : l) = mid; } cout << r << endl; 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...