Submission #332758

#TimeUsernameProblemLanguageResultExecution timeMemory
332758vitkishloh228Cipele (COCI18_cipele)C++14
90 / 90
105 ms3052 KiB
#include<iostream> #include<algorithm> #include<vector> using namespace std; vector<int> a, b; int n, m; int ans = 0; bool ok(int t) { int j = 0; ans = 0; for (int i = 0; i < n; i++) { while (j < m && abs(a[i] - b[j]) > t) j++; if (j == m) return false; ans += abs(a[i] - b[j]); j++; } return true; } int main() { // int n, m; cin >> n >> m; a.resize(n); b.resize(m); //vector<int> a(n), b(m); for (int i = 0; i < n; ++i) { cin >> a[i]; } for (int i = 0; i < m; ++i) { cin >> b[i]; } if (n > m) { swap(n, m); swap(a, b); } sort(a.begin(), a.end()); sort(b.begin(), b.end()); int tl = -1, tr = 1e9; while (tl < tr - 1) { int tm = (tl + tr) >> 1; if (!ok(tm)) { tl = tm; } else tr = tm; } ok(tr); cout << tr; }
#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...