結果

問題 No.355 数当てゲーム(2)
ユーザー honakehonake
提出日時 2016-10-19 20:18:50
言語 Ruby
(3.3.0)
結果
RE  
実行時間 -
コード長 733 bytes
コンパイル時間 249 ms
コンパイル使用メモリ 7,552 KB
実行使用メモリ 29,640 KB
平均クエリ数 10.63
最終ジャッジ日時 2024-07-16 11:15:19
合計ジャッジ時間 14,851 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 RE -
testcase_01 RE -
testcase_02 RE -
testcase_03 RE -
testcase_04 AC 104 ms
29,144 KB
testcase_05 AC 97 ms
28,376 KB
testcase_06 RE -
testcase_07 RE -
testcase_08 RE -
testcase_09 RE -
testcase_10 RE -
testcase_11 RE -
testcase_12 RE -
testcase_13 AC 103 ms
28,888 KB
testcase_14 RE -
testcase_15 RE -
testcase_16 AC 98 ms
29,016 KB
testcase_17 RE -
testcase_18 RE -
testcase_19 RE -
testcase_20 RE -
testcase_21 RE -
testcase_22 RE -
testcase_23 RE -
testcase_24 RE -
testcase_25 AC 101 ms
29,008 KB
testcase_26 RE -
testcase_27 AC 103 ms
29,136 KB
testcase_28 RE -
testcase_29 AC 101 ms
28,880 KB
testcase_30 AC 102 ms
28,752 KB
testcase_31 RE -
testcase_32 RE -
testcase_33 AC 102 ms
28,624 KB
testcase_34 RE -
testcase_35 RE -
testcase_36 RE -
testcase_37 RE -
testcase_38 RE -
testcase_39 RE -
testcase_40 RE -
testcase_41 RE -
testcase_42 RE -
testcase_43 RE -
testcase_44 RE -
testcase_45 RE -
testcase_46 RE -
testcase_47 RE -
testcase_48 RE -
testcase_49 AC 100 ms
29,000 KB
testcase_50 RE -
testcase_51 RE -
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

def try(arr)
  $stdout.puts arr.join(' ')
  $stdout.flush
  x,y = gets.split.map(&:to_i)
  [x,y]
end

fst = 0

[2, 4, 6, 8].each do |i|
  fst += try([0,1,i,i + 1]).reduce(:+)
end

if fst == 4
  sets = [[2, 3], [4, 5], [6, 7], [8, 9]]
elsif fst == 7
  sets = [[0, 1], [2, 3], [4, 5], [6, 7]]
elsif fst == 10
  sets = [[0, 0], [1, 1], [2, 3], [6, 7]]
end

nums = []

4.times do |i|
  arr = [sets[0][0], sets[1][0], sets[2][0], sets[3][0]]
  fb1 = try(arr).reduce(:+)
  arr[i] = sets[i][1]
  fb2 = try(arr).reduce(:+)
  if fb2 > fb1
    nums.push(sets[i][1])
  elsif fb2 < fb1
    nums.push(sets[i][0])
  elsif fb1 == fb2
    raise "equal error"
  end
end

nums.permutation(4).each do |arr|
  res = try(arr)
  break if res == [4,0]
end
0