Submission #1161557

#TimeUsernameProblemLanguageResultExecution timeMemory
1161557duccnammThe Big Prize (IOI17_prize)C++20
0 / 100
1 ms420 KiB
#include<bits/stdc++.h> #include "prize.h" using namespace std; #define ll int ll a[200005],dd,d,le,ri,l,r,mid,vt,n; vector<ll>vc,vc1; //vector<ll>ask (int i) //{ // vector<ll>vcx; // ll ddx=0; // for(int j=1;j<i;j++) // if(a[j]<a[i]) // ddx++; // vcx.push_back(ddx); // ddx=0; // for(int j=i+1;j<=n;j++) // if(a[j]<a[i]) // ddx++; // vcx.push_back(ddx); // return vcx; // //} int find_best(int n) { dd=sqrt(n); dd++; for(int i=1;i<=dd;i++) { vc=ask(i); if(d<vc[0]+vc[1]) { d=vc[0]+vc[1]; le=vc[0]; ri=vc[1]; } else if(d>vc[0]+vc[1]) { le++; ri--; } } while(1) { l=dd+1; r=n; vt=n+1; while(l<=r) { mid=(l+r)/2; vc1=ask(mid); if(vc1[0]+vc1[1]==0) return mid; if(vc1[0]+vc1[1]<d||vc1[0]>le) { vt=min(vt,mid); r=mid-1; } else l=mid+1; } if(vt==n+1) break; dd=vt; le++; } } //int main() //{ // cin>>n; // for(int i=1;i<=n;i++) // cin>>a[i]; // cout<<find_best(n); //}

Compilation message (stderr)

prize.cpp: In function 'int find_best(int)':
prize.cpp:66:1: warning: control reaches end of non-void function [-Wreturn-type]
   66 | }
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...