結果
| 問題 |
No.594 壊れた宝物発見機
|
| コンテスト | |
| ユーザー |
vwxyz
|
| 提出日時 | 2022-08-03 02:04:59 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,186 bytes |
| コンパイル時間 | 535 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 27,752 KB |
| 平均クエリ数 | 55.00 |
| 最終ジャッジ日時 | 2024-07-23 20:13:40 |
| 合計ジャッジ時間 | 5,325 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 2 WA * 18 |
ソースコード
import sys
readline=sys.stdin.readline
def Interactive(*query):
print(*query)
sys.stdout.flush()
return input()
def Tersect_Int(L,R,f,eps=1e-12,maximize=False):
f_L,f_R=f(L),f(R)
while abs(R-L)>1:
l,r=(2*L+R+1)//3,(L+2*R+1)//3
f_l,f_r=f(l),f(r)
if maximize:
if f_l>=f_r>=f_R:
R=r
f_R=f_r
elif f_L<=f_l<=f_r:
L=l
f_L=f_l
else:
L,R=l,r
f_L,f_R=f_l,f_r
else:
if f_l<=f_r<=f_R:
R=r
f_R=f_r
elif f_L>=f_l>=f_r:
L=l
f_L=f_l
else:
L,R=l,r
f_L,f_R=f_l,f_r
if maximize:
if f_L<=f_R:
retu=R
else:
retu=L
else:
if f_L<=f_R:
retu=L
else:
retu=R
return retu
def fx(x):
return int(Interactive("?",x,0,0))
def fy(y):
return int(Interactive("?",0,y,0))
def fz(z):
return int(Interactive("?",0,0,z))
print("!",Tersect_Int(-15,15,fx),Tersect_Int(-15,15,fy),Tersect_Int(-15,15,fz))
vwxyz