結果

問題 No.246 質問と回答
ユーザー horiesinitihoriesiniti
提出日時 2017-06-27 10:25:03
言語 Ruby
(3.3.0)
結果
AC  
実行時間 148 ms / 2,000 ms
コード長 334 bytes
コンパイル時間 305 ms
コンパイル使用メモリ 7,424 KB
実行使用メモリ 29,016 KB
平均クエリ数 39.33
最終ジャッジ日時 2024-07-16 20:13:15
合計ジャッジ時間 6,371 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 148 ms
29,016 KB
testcase_01 AC 148 ms
28,760 KB
testcase_02 AC 144 ms
28,888 KB
testcase_03 AC 144 ms
28,504 KB
testcase_04 AC 144 ms
28,760 KB
testcase_05 AC 140 ms
28,504 KB
testcase_06 AC 140 ms
29,016 KB
testcase_07 AC 140 ms
28,760 KB
testcase_08 AC 143 ms
29,016 KB
testcase_09 AC 141 ms
28,632 KB
testcase_10 AC 136 ms
28,760 KB
testcase_11 AC 139 ms
28,896 KB
testcase_12 AC 143 ms
28,760 KB
testcase_13 AC 142 ms
28,632 KB
testcase_14 AC 139 ms
28,888 KB
testcase_15 AC 143 ms
28,888 KB
testcase_16 AC 137 ms
28,632 KB
testcase_17 AC 137 ms
29,016 KB
testcase_18 AC 143 ms
28,904 KB
testcase_19 AC 139 ms
29,016 KB
testcase_20 AC 141 ms
29,008 KB
testcase_21 AC 139 ms
28,632 KB
testcase_22 AC 141 ms
28,624 KB
testcase_23 AC 137 ms
28,760 KB
testcase_24 AC 141 ms
28,760 KB
testcase_25 AC 139 ms
28,888 KB
testcase_26 AC 138 ms
28,504 KB
testcase_27 AC 136 ms
28,632 KB
testcase_28 AC 140 ms
28,888 KB
testcase_29 AC 136 ms
28,760 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

def f(d,u)
	if d==u then
		puts ["!",d]*" "
		STDOUT.flush
	else
		m=(d+u)/2
		puts ["?",m]*" "
		STDOUT.flush
		x=gets.to_i
		if x==1 then
			puts ["?",m+1]*" "
			STDOUT.flush
			if gets.to_i==0 then
				puts ["!",m]*" "
				STDOUT.flush
				return 
			end
		end
		if x==0 then
			f(d,m)
		else
			f(m+1,u)
		end
	end
end
f(1,10**9)
0