제출 #298566

#제출 시각아이디문제언어결과실행 시간메모리
298566medk커다란 상품 (IOI17_prize)C++14
20 / 100
87 ms384 KiB
#include <bits/stdc++.h>
#include "prize.h"

#define ll long long
#define pb push_back
#define x first
#define y second
#define sz(u) (int)(u.size())
#define all(u) u.begin(),u.end()

using namespace std;

vector<int> tmp;

int find_best(int N){
    int ptr=0;
    int curL=1, curR=1;
    while(1){
        assert(ptr<N);
        tmp=ask(ptr);
        if(tmp[0]+tmp[1]==0) break;
        curL=tmp[0];
        curR=tmp[1];
        int l=ptr,r=N-1;
        while(l<r){
            int md=(l+r+1)/2;
            tmp=ask(md);
            if(tmp[0]!=curL || tmp[1]!=curR) r=md-1;
            else l=md;
        }
        ptr=l+1;
    }
    return ptr;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...