#include <bits/stdc++.h>
using namespace std;
int const MAX=1e5+5;
long double a[MAX],b[MAX];
int n;
bool cmp(long double x,long double y){
    return x>y;
}
void read(){
    cin>>n;
    int i;
    for(i=1;i<=n;++i)
        cin>>a[i]>>b[i];
    sort(a+1,a+n+1,cmp);
    sort(b+1,b+n+1,cmp);
}
long double answer;
void maxself(long double& x,long double val){
    if(x<val)
        x=val;
}
void interclasare(long double v1[],long double v2[]){
    long double sum1=0,sum2=0;
    int id=1;
    int i;
    for(i=1;i<=n;++i){
        sum1+=v1[i];
        while(id<=n && sum2<sum1){
            sum2+=v2[id];
            ++id;
        }
        if(sum2>=sum1)
            maxself(answer,sum1-i-id+1);
    }
}
int main()
{
    read();
    interclasare(a,b);
    interclasare(b,a);
    cout<<fixed<<setprecision(4)<<answer;
    return 0;
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |