제출 #72576

#제출 시각아이디문제언어결과실행 시간메모리
72576funcsrCup of Jamshid (IOI17_cup)C++17
0 / 100
3 ms340 KiB
#include "cup.h"
#include <iostream>
using namespace std;
#define rep(i, n) for (int i=0; i<(n); i++)

long long query(int x, int y) {
  return ask_shahrasb(x-1e9, y-5e8);
}
std::vector<int> find_cup() {
  long long g = query(0, 0);
  long long X = 0;
  rep(k, 29) if (((query((1LL<<k), 0)>>(k+1))&1) == ((g>>(k+1))&1)) X |= 1<<k;
  rep(_, 2) rep(_2, 2){
    long long x = X;
    if(_)x^=1LL<<29;
    if(_2)x^=1LL<<30;
    long long y = x^g;
    x -= 1e9;
    y -= 5e8;
    //cout<<"("<<x<<","<<y<<")\n";
    if (x<-5e8||x>5e8||y<-5e8||y>5e8) continue;
    //cout<<"ask="<<ask_shahrasb(x-1,y)<<"\n";
    if(ask_shahrasb(x-1,y)==1) return {(int)x,(int)y};
    return {(int)x,(int)y};
  }
  abort();
}
#Verdict Execution timeMemoryGrader output
Fetching results...