Submission #965285

# Submission time Handle Problem Language Result Execution time Memory
965285 2024-04-18T09:30:18 Z AdamGS Cup of Jamshid (IOI17_cup) C++17
100 / 100
1 ms 348 KB
#include "cup.h"
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(a, b) for(int a = 0; a < (b); ++a)
#define st first
#define nd second
#define pb push_back
#define all(a) a.begin(), a.end()
vector<int>find_cup() {
  int X=1000000000;
  vector<int>T(2);
  int x=ask_shahrasb(X, X);
  for(int i=0; i<29; ++i) {
    int y=ask_shahrasb(X-(1<<i), X);
    int p=x^y;
    if(!(p&(1<<(i+1)))) T[0]|=1<<i;
  }
  if(T[0]<X/2) {
    int y=ask_shahrasb(X-(1<<29), X);
    int p=x^y;
    if(p&(1<<30)) T[0]|=1<<30; else T[0]|=1<<29;
  } else {
    int y=ask_shahrasb(X-(1<<29), X);
    int p=x^y;
    if(p&(1<<29)) T[0]|=1<<29;
  }
  T[0]=X-T[0];
  x^=X-T[0];
  T[1]=X-x;
  return T;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct