Submission #468701

#TimeUsernameProblemLanguageResultExecution timeMemory
468701JosiaSure Bet (CEOI17_sure)C++14
60 / 100
2074 ms3664 KiB
#include <bits/stdc++.h>

#define int int64_t

using namespace std;




signed main() { // they may not be all connected!!!
    cin.tie(0);
    ios_base::sync_with_stdio(0);


    int n; cin >> n;

    vector<double> bets1(n);
    vector<double> bets2(n);

    for (int i = 0; i<n; i++) {
        cin >> bets1[i] >> bets2[i];
    }


    sort (bets1.begin(), bets1.end());
    sort (bets2.begin(), bets2.end());

    reverse(bets1.begin(), bets1.end());
    reverse(bets2.begin(), bets2.end());


    vector<double> pfs1={0}, pfs2={0};

    for (int i = 0; i<n; i++) {
        pfs1.push_back(pfs1.back()+bets1[i]);
        pfs2.push_back(pfs2.back()+bets2[i]);
    }

    double res = 0;


    for (int i = 1; i<=n; i++) {
        for (int j = 1; j<=n; j++) {
            res = max(res, min(pfs1[i]-i-j, pfs2[j]-i-j));
        }
    }



    printf("%.4lf\n",(double)res);


    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...