Submission #371482

#TimeUsernameProblemLanguageResultExecution timeMemory
371482urd05The Big Prize (IOI17_prize)C++14
20 / 100
3048 ms1268 KiB
#include "prize.h" #include <bits/stdc++.h> using namespace std; int save[200000]; int ret; int f(int i) { if (save[i]!=-1) { return save[i]; } vector<int> v=ask(i); if (v[0]==0&&v[1]==0) { ret=i; } return save[i]=v[0]; } int find_best(int n) { ret=-1; int now=0; memset(save,-1,sizeof(save)); f(now); if (ret!=-1) { return ret; } while (1) { for(int i=13;i>=0;i--) { if (now+(1<<i)>=n) { continue; } if (f(now+(1<<i))==0) { now+=(1<<i); break; } } if (ret!=-1) { return ret; } } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...