제출 #1172985

#제출 시각아이디문제언어결과실행 시간메모리
1172985nguyenkhangninh99Sure Bet (CEOI17_sure)C++17
100 / 100
80 ms6540 KiB

#include <bits/stdc++.h>
 
using namespace std;
 
#define int long long
#define double long double

void solve(){
    int n; cin >> n;
    
    vector<double> a(n + 1), b(n + 1), suma(n + 1), sumb(n + 1);

    for (int i = 1; i <= n; i++) cin >> a[i] >> b[i];
    sort(a.begin() + 1, a.end(), greater());
    sort(b.begin() + 1, b.end(), greater());

    for (int i = 1; i <= n; i++) suma[i] = suma[i - 1] + a[i]; 
    for (int i = 1; i <= n; i++) sumb[i] = sumb[i - 1] + b[i];

    double res = 0;
    for (int i = 0; i <= n; i++){
        int j = lower_bound(sumb.begin(), sumb.end(), suma[i]) - sumb.begin();
        if(j <= n) res = max(res, suma[i] - (j + i));
        if(j >= 1) res = max(res, sumb[j - 1] - (j + i - 1));

    }
    cout << setprecision(4) << fixed << res;

}


 
signed main(){
    ios_base::sync_with_stdio(false); 
    cin.tie(0); cout.tie(0);
 
 
    solve();
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...