#include <bits/stdc++.h>
using namespace std;
using ld = double;
void solve() {
int n;
cin >> n;
vector<ld> a(n), b(n);
for (int i = 0; i < n; i++) cin >> a[i] >> b[i];
// solve
sort(a.rbegin(), a.rend());
sort(b.rbegin(), b.rend());
int ap = 0, bp = 0;
ld as = 0, bs = 0, ans = 0;
for (int i = 0; i < 2*n; i++) {
if (as < bs) {
if (ap == n) break;
as += a[ap++];
} else {
if (bp == n) break;
bs += b[bp++];
}
ans = max(ans, min(as, bs) - i - 1);
}
cout << fixed << setprecision(4) << ans << '\n';
}
signed main() {
cin.tie(0)->sync_with_stdio(0);
solve();
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |