Submission #1019668

#TimeUsernameProblemLanguageResultExecution timeMemory
1019668overwatch9Sure Bet (CEOI17_sure)C++17
0 / 100
1 ms348 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; int main() { int n; cin >> n; vector <pair <ll, ll>> nums(n); for (int i = 0; i < n; i++) { double a, b; cin >> a >> b; nums[i].first = (a * 10000); nums[i].second = (b * 10000); } vector <ll> a(n), b(n); for (int i = 0; i < n; i++) { a[i] = nums[i].first; b[i] = nums[i].second; } sort(a.begin(), a.end()); sort(b.begin(), b.end()); ll l = 0, r = 0; ll ans = 0; int pt1 = n-1, pt2 = n-1; ll cnt = 0; while (cnt < 2 * n) { if ((l < r && pt1 >= 0) || pt2 < 0) { l += a[pt1]; pt1--; } else { r += b[pt2]; pt2--; } cnt++; ans = max(ans, min(l, r) - cnt * 10000); } cout << fixed << setprecision(4) << (double)ans / 10000 << '\n'; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...