結果

問題 No.1187 皇帝ペンギン
ユーザー tatt61880
提出日時 2021-02-21 01:38:55
言語 Kuin
(KuinC++ v.2021.9.17)
結果
AC  
実行時間 24 ms / 1,000 ms
コード長 590 bytes
コンパイル時間 1,981 ms
コンパイル使用メモリ 146,260 KB
実行使用メモリ 25,220 KB
平均クエリ数 18.26
最終ジャッジ日時 2024-09-16 11:32:45
合計ジャッジ時間 6,285 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 54
権限があれば一括ダウンロードができます

ソースコード

diff #

func main()
	do cui@print("? 1\n")
	do cui@flush()
	if(cui@input() = "out")
		do cui@print("! 0\n")
		do cui@flush()
		ret
	end if
	var ok: int :: 1
	var ng: int :: 1000
	while((ok - ng).abs() > 1)
		var mid: int :: (ok + ng) / 2
		if(isOk(mid))
			do ok :: mid
		else
			do ng :: mid
		end if
	end while
	do cui@print("? \{ok}\n")
	do cui@flush()
	do cui@print("! \{ok + (cui@input() = "safe" ?(0, 1))}\n")
	
	func isOk(n: int): bool
		for i(0, 1)
			do cui@print("? \{n + i}\n")
			do cui@flush()
			if(cui@input() = "safe")
				ret true
			end if
		end for
		ret false
	end func
end func
0