Submission #468674

#TimeUsernameProblemLanguageResultExecution timeMemory
468674wdjpngSure Bet (CEOI17_sure)C++17
0 / 100
1 ms204 KiB
#include <bits/stdc++.h> //#define double long double #define int long long #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<long 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)); long double maxx = 0; int off = 2; vector<long 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",(long double)maxx); //cout<<"\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...