結果
| 問題 | No.594 壊れた宝物発見機 | 
| コンテスト | |
| ユーザー |  wajima_wataru | 
| 提出日時 | 2018-01-03 22:49:10 | 
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) | 
| 結果 | 
                                RE
                                 
                             | 
| 実行時間 | - | 
| コード長 | 593 bytes | 
| コンパイル時間 | 267 ms | 
| コンパイル使用メモリ | 12,672 KB | 
| 実行使用メモリ | 28,000 KB | 
| 平均クエリ数 | 201.00 | 
| 最終ジャッジ日時 | 2024-07-16 15:16:16 | 
| 合計ジャッジ時間 | 4,220 ms | 
| ジャッジサーバーID (参考情報) | judge2 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | RE * 20 | 
ソースコード
import math
P = []
for i in [-1, 0, 1]:
    for j in [-1, 0, 1]:
        for k in [-1, 0, 1]:
            P.append([i, j, k])
min_val = 10000000000
min_p = []
offset = [0, 0, 0]
d = 50
while d > 0:
    for p in P:
        print('? {x} {y} {z}'.format(x=offset[0]+p[0]*d, y=offset[1]+p[1]*d, z=offset[2]+p[2]*d))
        D = int(input())
        if D < min_val:
            min_val = D
            min_p = p
    offset = [offset[0] + min_p[0] * d, offset[1] + min_p[1] * d, offset[2] + min_p[2] * d]
    d = math.ceil(d / 2)
print('! {x} {y} {z}'.format(x=offset[0], y=offset[1], z=offset[2]))
            
            
            
        