This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#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 time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |