Submission #1027198

#TimeUsernameProblemLanguageResultExecution timeMemory
1027198toan2602Sure Bet (CEOI17_sure)C++14
100 / 100
55 ms2764 KiB
#include<bits/stdc++.h> using namespace std; int n; double a[100005], b[100005], pfs[100005]; void solve() { cin >> n; for (int i = 1; i <= n; i++) cin >> a[i] >> b[i]; sort(a+1,a+1+n, greater<>()); sort(b+1,b+1+n, greater<>()); for (int i = 1; i <= n; i++) pfs[i] = pfs[i-1] + b[i]; double ra, rb, res = 0; ra = rb = 0; for (int i = 1; i <= n; i++) { ra += a[i], rb = 0; int l = 1, r = n, mid, pos=n; while(l <= r) { mid = (l+r)/2; if(pfs[mid] > ra) r = mid-1, pos = min(pos, mid); else l = mid+1; } res = max(res, min(ra-i-pos, pfs[pos]-i-pos)); if(pos != 1) pos--, res = max(res, min(ra-i-pos, pfs[pos]-i-pos)); } cout << fixed << setprecision(4) << res; } signed main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); if(fopen("input.inp","r")){ freopen("input.inp", "r", stdin); freopen("output.out", "w", stdout); } int t = 1; // cin >> t; while(t--) { solve(); } }

Compilation message (stderr)

sure.cpp: In function 'int main()':
sure.cpp:31:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   31 |   freopen("input.inp", "r", stdin);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
sure.cpp:32:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   32 |   freopen("output.out", "w", stdout);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...