Submission #858378

#TimeUsernameProblemLanguageResultExecution timeMemory
858378Tenis0206Sure Bet (CEOI17_sure)C++11
100 / 100
65 ms3712 KiB
#include <bits/stdc++.h>

using namespace std;

const int nmax = 1e5;

int n;
double a[nmax + 5], b[nmax + 5];

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    #ifdef home
    freopen("nr.in","r",stdin);
    freopen("nr.out","w",stdout);
    #endif // home
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i]>>b[i];
    }
    sort(a+1,a+n+1,greater<double>());
    sort(b+1,b+n+1,greater<double>());
    double rez = 0;
    double sum_a = 0, sum_b = 0;
    int nra = 0, nrb = 0;
    while(nra < n || nrb < n)
    {
        if(nrb == n || (nra < n && sum_a < sum_b))
        {
            ++nra;
            sum_a += a[nra];
        }
        else
        {
            ++nrb;
            sum_b += b[nrb];
        }
        rez = max(rez, min(sum_a, sum_b) - (nra + nrb));
    }
    cout<<fixed<<setprecision(4);
    cout<<rez<<'\n';
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...