結果
| 問題 | No.1793 実数当てゲーム | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2021-12-22 01:39:41 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 305 ms / 2,000 ms | 
| コード長 | 916 bytes | 
| コンパイル時間 | 175 ms | 
| コンパイル使用メモリ | 82,304 KB | 
| 実行使用メモリ | 106,840 KB | 
| 平均クエリ数 | 2230.56 | 
| 最終ジャッジ日時 | 2024-09-28 13:31:48 | 
| 合計ジャッジ時間 | 6,775 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge1 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 18 | 
ソースコード
import sys,random,bisect
from collections import deque,defaultdict
from heapq import heapify,heappop,heappush
from itertools import permutations
from math import log,gcd
from fractions import Fraction
input = lambda :sys.stdin.readline().rstrip()
mi = lambda :map(int,input().split())
li = lambda :list(mi())
def query(y):
    if y < 100:
        print("? {:.100f}".format(y))
    else:
        print("? {:.100g}".format(y))
    sys.stdout.flush()
    #return True
    res = input()
    assert res!="-1"
    return res=="Yes"
def answer(x):
    if x < 100:
        print("! {:.100f}".format(x))
    else:
        print("! {:.100g}".format(x))
    sys.stdout.flush()
for _ in range(int(input())):
    ok = 10**(-5.5)
    ng = 10**74 * 12.22
    for i in range(24):
        mid = (ok*ng)**.5
        if query(mid):
            ok = mid
        else:
            ng = mid
    mid = (ok*ng)**.5
    answer(mid)
    
            
            
            
        