#include "cup.h"
#include <bits/stdc++.h>
using namespace std;
#define Q ask_shahrasb
vector<int> find_cup() {
    vector<int> res(2);
    int base = Q(0, 0);
    for (int i = 0; i < 28; i ++) {
        if ((base >> i)&1) {
            // one of a[i] and b[i] are set
            // cout << i << "th bit is set\n";
            if (Q(1 << i, 0) == (base^(1 << i))) res[0] ^= (1 << i);
        } else {
            // either both or none are set
            if (Q(1 << i, 0) == (base^(1 << i))) res[0] ^= (1 << i);
        }
    }
    res[1] = base ^ res[0];
    if (Q(res[0], 0) != res[1]) res[0] = -res[0];
    if (Q(0, res[1]) != abs(res[0])) res[1] = -res[1];
    // cout << res[0] << " " << res[1] << "\n";
    return res;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |