結果
| 問題 |
No.594 壊れた宝物発見機
|
| コンテスト | |
| ユーザー |
rlangevin
|
| 提出日時 | 2024-03-12 07:54:58 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,298 bytes |
| コンパイル時間 | 249 ms |
| コンパイル使用メモリ | 82,304 KB |
| 実行使用メモリ | 70,624 KB |
| 平均クエリ数 | 189.00 |
| 最終ジャッジ日時 | 2024-09-29 22:11:09 |
| 合計ジャッジ時間 | 5,919 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | WA * 20 |
ソースコード
import sys
lx, rx = -150, 150
ly, ry = -150, 150
lz, rz = -150, 150
for _ in range(30):
c1, c2 = (lx * 2 + rx)//3, (lx + rx * 2)//3
print("? {} {} {}".format(c1, ly, lz))
sys.stdout.flush()
f1 = int(input())
print("? {} {} {}".format(c2, ly, lz))
sys.stdout.flush()
f2 = int(input())
if f1 <= f2:
lx = c2
else:
rx = c1
for _ in range(30):
c1, c2 = (ly * 2 + ry)//3, (ly + ry * 2)//3
print("? {} {} {}".format(lx, c1, lz))
sys.stdout.flush()
f1 = int(input())
print("? {} {} {}".format(lx, c2, lz))
sys.stdout.flush()
f2 = int(input())
if f1 <= f2:
ly = c2
else:
ry = c1
for _ in range(30):
c1, c2 = (lz * 2 + rz)//3, (lz + rz * 2)//3
print("? {} {} {}".format(lx, ly, c1))
sys.stdout.flush()
f1 = int(input())
print("? {} {} {}".format(lx, ly, c2))
sys.stdout.flush()
f2 = int(input())
if f1 <= f2:
lz = c2
else:
rz = c1
ans = []
minv = 10 ** 18
for x in range(lx, rx + 1):
for y in range(ly, ry + 1):
for z in range(lz, rz + 1):
print("? {} {} {}".format(x, y, z))
d = int(input())
if d <= minv:
minv = d
ans = ["!", x, y, z]
print(*ans)
rlangevin