Submission #878700

#TimeUsernameProblemLanguageResultExecution timeMemory
878700Faisal_SaqibSure Bet (CEOI17_sure)C++17
100 / 100
110 ms4388 KiB
#include <iostream> #include <vector> #include <cmath> #include <algorithm> #include <iomanip> using namespace std; int main() { cout<<fixed<<setprecision(4); int n; cin>>n; vector<double> a,b; for(int i=0;i<n;i++) { double x,y; cin>>x>>y; a.push_back(x); b.push_back(y); } sort(rbegin(a),rend(a)); sort(rbegin(b),rend(b)); vector<double> pre0,pre1; pre1=pre0={0}; for(int i=0;i<n;i++) { pre0.push_back(pre0.back()+a[i]); pre1.push_back(pre1.back()+b[i]); } pre1.push_back(pre1.back()); pre0.push_back(pre0.back()); int j=0; double ans=0; n++; for(int i=0;i<n;i++) { while(j<n and pre1[j]<pre0[i]) { j++; } if(pre0[i]<=pre1[j]) ans=max(ans,pre0[i]-i-j); } j=0; for(int i=0;i<n;i++) { while(j<=n and pre0[j]<pre1[i]) { j++; } if(pre0[j]>=pre1[i]) ans=max(ans,pre1[i]-i-j); } cout<<ans<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...