Submission #919624

#TimeUsernameProblemLanguageResultExecution timeMemory
919624mariamp1Cipele (COCI18_cipele)C++14
90 / 90
69 ms2956 KiB
#include <iostream> #include <algorithm> using namespace std; const int N = 1e5 + 10; int n, m, a[N], b[N]; bool check(int x) { int ptr = 1; for (int i = 1; i <= n; i++) { while (ptr <= m && a[i] - x > b[ptr]) ptr++; if (ptr == m + 1 || a[i] + x < b[ptr]) return false; ptr++; } return true; } int main() { cin >> n >> m; for (int i = 1; i <= n; i++) cin >> a[i]; for (int i = 1; i <= m; i++) cin >> b[i]; sort(a + 1, a + n + 1); sort(b + 1, b + m + 1); if (n > m) { swap(n, m); for (int i = 1; i < N; i++) swap(a[i], b[i]); } int l = 0, h = 1e9, ans = 0; while (l <= h) { int mid = (l + h) / 2; if (check(mid)) { ans = mid; h = mid - 1; } else l = mid + 1; } cout << ans << endl; }
#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...