結果

問題 No.355 数当てゲーム(2)
ユーザー simansiman
提出日時 2023-07-10 21:43:55
言語 Ruby
(3.4.1)
結果
AC  
実行時間 112 ms / 2,000 ms
コード長 536 bytes
コンパイル時間 645 ms
コンパイル使用メモリ 7,296 KB
実行使用メモリ 29,144 KB
平均クエリ数 31.21
最終ジャッジ日時 2024-09-12 23:51:21
合計ジャッジ時間 9,374 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 52
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

def send_query(nums)
  STDOUT.puts(nums.join(' '))
  STDOUT.flush
  a, b = gets.chomp.split.map(&:to_i)
  if a == 4
    exit 0
  end
  [a, b]
end

excepted_nums = []
nums = [*0..9]
nums.combination(4).to_a.shuffle.each do |list|
  a, b = send_query(list)

  if a + b == 0
    excepted_nums = list.dup
    break
  end
end

cand = []

10.times do |i|
  next if excepted_nums.include?(i)
  excepted_nums[3] = i
  a, b = send_query(excepted_nums)

  if a + b > 0
    cand << i
  end
end

cand.permutation(4).each do |n|
  send_query(n)
end
0