Submission #1027362

#TimeUsernameProblemLanguageResultExecution timeMemory
1027362hehebjp123Sure Bet (CEOI17_sure)C++14
100 / 100
172 ms2788 KiB
#include<bits/stdc++.h> #pragma GCC optimize("Ofast,O3,unroll-loops") #define ll long long #define fi first #define se second #define ii pair<ll,ll> #define pb push_back using namespace std; const ll N=2e5+5; const long long mod=1e9+7; const double esp=1e-8; double a[N],b[N]; ll vta,vtb,i,j,n; bool kt(double k) { for(ll i=1;i<=n;i++) if(a[i]>=k) { ll l=1,r=n,vt; while(l<=r) { ll mid=(l+r)/2; if(b[mid]-i>=k) { r=mid-1; if(a[i]-mid>=k) return 1; } else l=mid+1; } } return 0; } int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); cin>>n; for(i=1;i<=n;i++){ cin>>a[i]>>b[i]; } sort(a+1,a+n+1,greater<double>()); sort(b+1,b+n+1,greater<double>()); a[1]-=1; b[1]-=1; for(i=2;i<=n;i++) { a[i]+=a[i-1]-1; b[i]+=b[i-1]-1; } //return cout<<kt(0.5),0; double l=0,r=1e8,kq=0; while(l<=r-esp) { double mid=(l+r)/2; // cout<<l<<" "<<r<<" "<<mid<<'\n'; if(kt(mid)) { kq=mid; l=mid+esp; } else r=mid-esp; } cout<<setprecision(4)<<fixed<<kq; } /* 5 1.5 2.5 2.5 1.5 1.8 2.2 1.6 2.1 2.5 1.4 */

Compilation message (stderr)

sure.cpp: In function 'bool kt(double)':
sure.cpp:19:16: warning: unused variable 'vt' [-Wunused-variable]
   19 |     ll l=1,r=n,vt;
      |                ^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...