Submission #1231768

#TimeUsernameProblemLanguageResultExecution timeMemory
1231768countlessCup of Jamshid (IOI17_cup)C++20
0 / 100
4 ms320 KiB
#include "cup.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; #define sp <<" "<< #define endl "\n" const int ONES = (1 << 30) - 1; vector<int> find_cup() { vector<int> res(2); int base = ask_shahrasb(0, 0); bool flipX = false, flipY = false; int checkX = ask_shahrasb((1 << 29), 0); if (!(checkX & (1 << 29))) { flipX = true; } int checkY = ask_shahrasb((1 << 29), 0); if (!(checkX & (1 << 29))) { flipY = true; } vector<int> queries(30); for (int bit = 0; bit < 30; bit++) { int shift = (1 << bit); if (flipX) shift *= -1; int query = ask_shahrasb(shift, 0); queries[bit] = (base ^ query); } for (int i = 0; i < 30; i++) { if (queries[i] & (1 << (i+1))) { res[0] |= (1 << i); } } for (int i = 0; i < 30; i++) { if ((base & (1 << i)) ^ (res[0] & (1 << i))) { res[1] |= (1 << i); } } if (!flipX) res[0] *= -1; if (!flipY) res[1] *= -1; cerr << res[0] sp res[1] << endl; return res; }
#Verdict Execution timeMemoryGrader output
Fetching results...