답안 #412400

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
412400 2021-05-26T20:03:34 Z nxteru Cup of Jamshid (IOI17_cup) C++14
100 / 100
1 ms 204 KB
#include "cup.h"
#include <bits/stdc++.h>
using namespace std;
vector<int> find_cup() {
    int sx=-500000000,sy=-500000000;
    int p=ask_shahrasb(sx,sy);
    int x=0,y=0;
    for(int i=0;i<29;i++){
        if((p^ask_shahrasb(sx,sy-(1<<i)))>>(i+1)&1)y+=(1<<i);
    }
    int gx=sx,gy=sy;
    if(gy+y-(1<<29)>=-1000000000){
        gy+=y;
        int q=ask_shahrasb(gx,gy);
        if((q^ask_shahrasb(gx,gy-(1<<29)))>>(29+1)&1)y+=(1<<29);
    }else{
        y+=(1<<29);
        gy+=y;
        int q=ask_shahrasb(gx,gy);
        if((q^ask_shahrasb(gx,gy+(1<<29)))>>(29+1)&1)y-=(1<<29);
    }
    vector<int>ans;
    x=p^y;
    ans.push_back(sx+x);
    ans.push_back(sy+y);
    return ans;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct