結果

問題 No.2962 Sum Bomb Bomber
ユーザー ゼット
提出日時 2024-11-16 16:57:12
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 157 ms / 2,000 ms
コード長 894 bytes
コンパイル時間 460 ms
コンパイル使用メモリ 81,920 KB
実行使用メモリ 70,504 KB
平均クエリ数 188.85
最終ジャッジ日時 2024-11-16 16:58:43
合計ジャッジ時間 12,685 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 64
権限があれば一括ダウンロードができます

ソースコード

diff #

N=int(input())
l=-10**8
r=10**8
while True:
  m1=(2*l+r)//3
  m2=(l+2*r)//3
  print(1,m1,0,flush=True)
  d1=int(input())
  print(1,m2,0,flush=True)
  d2=int(input())
  if d1<=d2:
    r=m2
  else:
    l=m1
  if abs(r-l)==0:
    break
  if abs(r-l)<=2:
    w=10**19
    pos=-1
    for y in range(l,r+1):
      print(1,y,0,flush=True)
      d1=int(input())
      if d1<w:
        w=d1
        pos=y
    l=pos
    r=pos
    break
    
a=l
l=-10**8
r=10**8
while True:
  m1=(2*l+r)//3
  m2=(l+2*r)//3
  print(1,0,m1,flush=True)
  d1=int(input())
  print(1,0,m2,flush=True)
  d2=int(input())
  if d1<=d2:
    r=m2
  else:
    l=m1
  if l==r:
    break
  if abs(r-l)==0:
    break
  if abs(r-l)<=2:
    w=10**19
    pos=-1
    for y in range(l,r+1):
      print(1,0,y,flush=True)
      d1=int(input())
      if d1<w:
        w=d1
        pos=y
    l=pos
    r=pos
    break
b=l
print(2,a,b,flush=True)
0