結果

問題 No.594 壊れた宝物発見機
ユーザー kohei2019
提出日時 2023-08-13 22:51:09
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
RE  
実行時間 -
コード長 1,010 bytes
コンパイル時間 277 ms
コンパイル使用メモリ 12,800 KB
実行使用メモリ 28,136 KB
平均クエリ数 26.00
最終ジャッジ日時 2024-11-21 16:51:59
合計ジャッジ時間 4,452 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other RE * 20
権限があれば一括ダウンロードができます

ソースコード

diff #

def func(a,b,c):
    print('? {} {} {}'.format(a,b,c))
    D = int(input())
    return D

def sanbunntan(l,r):
    while l + 2 < r:
        c1 = l+(r-l)//3
        c2 = r-(r-l)//3
        if func(c1)<func(c2):
            r = c2
        else:
            l = c1
    val = sorted([(func(i),i) for i in range(l,r+1)])[0][1]
    return val

l=-110
r=110
while l + 2 < r:
    c1 = l+(r-l)//3
    c2 = r-(r-l)//3
    if func(c1,100,100)<func(c2,100,100):
        r = c2
    else:
        l = c1
valx = sorted([(func(i),i) for i in range(l,r+1)])[0][1]

l=-110
r=110
while l + 2 < r:
    c1 = l+(r-l)//3
    c2 = r-(r-l)//3
    if func(100,c1,100)<func(100,c2,100):
        r = c2
    else:
        l = c1
valy = sorted([(func(i),i) for i in range(l,r+1)])[0][1]

l=-110
r=110
while l + 2 < r:
    c1 = l+(r-l)//3
    c2 = r-(r-l)//3
    if func(100,100,c1)<func(100,100,c2):
        r = c2
    else:
        l = c1
valz = sorted([(func(i),i) for i in range(l,r+1)])[0][1]

print('! {} {} {}'.format(valx.valy,valz))
0