이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "prize.h"
#include<bits/stdc++.h>
using namespace std;
int ret=-1;
/*
vector<int> ask(int pos)
{
cout<<pos<<" -> ";
vector<int> cur={0,0};
for(int i=0;i<2;i++)cin>>cur[i];
return cur;
}
*/
vector<int> my_ask(int pos)
{
vector<int> cur=ask(pos);
if(cur[0]+cur[1]==0)ret=pos;
return cur;
}
void solve(int l,vector<int> arr_l,int r,vector<int> arr_r)
{
if(ret!=-1)return;
if(arr_l[0]==arr_r[0]&&arr_l[1]==arr_r[1])return;
if(r-l<=1)return;
int av=(l+r)/2;
vector<int> arr_av=my_ask(av);
if(arr_l[0]+1==arr_r[0]&&arr_r[1]+1==arr_l[1]&&arr_l[0]+arr_l[1]>arr_av[0]+arr_av[1])return;
solve(l,arr_l,av,arr_av);
solve(av,arr_av,r,arr_r);
}
int find_best(int n)
{
ret=-1;
solve(0,my_ask(0),n-1,my_ask(n-1));
return ret;
}
/*
int main()
{
cout<<find_best(8)<<endl;
}
*/
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |