Submission #468686

#TimeUsernameProblemLanguageResultExecution timeMemory
468686wdjpngSure Bet (CEOI17_sure)C++17
20 / 100
1 ms204 KiB
#include <bits/stdc++.h> //#define double double #define rep(i,n) for(int i = 0; i < n; i++) #define all(a) a.begin(), a.end() using namespace std; signed main() { int n; cin>>n; vector<double>a(n),b(n); rep(i,n) cin>>a[i]>>b[i]; sort(all(a)); sort(all(b)); reverse(all(a)); reverse(all(b)); double maxx = 0; int off = 2; vector<double>sum(2); vector<int>point(2,1); sum[0] = a[0]; sum[1] = b[0]; while(min(point[0], point[1])<n) { maxx=max(maxx, min(sum[0], sum[1])-off); if(point[0]==n||sum[0]>sum[1]) { sum[1]+=b[point[1]]; point[1]++; } else { sum[0]+=a[point[0]]; point[0]++; } off++; } maxx=max(maxx, min(sum[0], sum[1])-off); //cout<<(int)maxx<<"."; //maxx-=(int)maxx; //rep(i,3) //{ // maxx*=10; // cout<<(int)maxx; // maxx-=(int)maxx; //} //maxx*=10; //int o = (int)maxx; //if(1000*o+499<1000*maxx) o++; //cout<<o; printf("%.4lf",(double)maxx); //cout<<"\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...