結果
| 問題 | No.24 数当てゲーム |
| コンテスト | |
| ユーザー |
naotest2
|
| 提出日時 | 2017-05-26 17:46:14 |
| 言語 | Ruby (3.4.1) |
| 結果 |
AC
|
| 実行時間 | 93 ms / 5,000 ms |
| コード長 | 1,505 bytes |
| コンパイル時間 | 72 ms |
| コンパイル使用メモリ | 7,552 KB |
| 実行使用メモリ | 12,416 KB |
| 最終ジャッジ日時 | 2024-09-19 20:08:00 |
| 合計ジャッジ時間 | 1,841 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 10 |
コンパイルメッセージ
Syntax OK
ソースコード
N=gets.chomp.to_i
G=[]
for num in 1..N
(a,b,c,d,r) = gets.chomp.split
a = a.to_i
b = b.to_i
c = c.to_i
d = d.to_i
G[num-1] = []
G[num-1][0] = a
G[num-1][1] = b
G[num-1][2] = c
G[num-1][3] = d
G[num-1][4] = r
end
guess_have = {}
guess_not = {}
is_first = true
for num in 1..N
if G[num-1][4] == 'NO'
for i in 0..3
guess_not[G[num-1][i]] = 1
end
end
if G[num-1][4] == 'YES'
for i in 0..3
str = G[num-1][i]
if is_first
guess_have[str] = true
else
if not guess_have.key?(str)
guess_have.delete(str)
end
# found = false
# guess_have.each_pair do |x,y|
# if str == x
# found = true
# end
# end
# if not found
# guess_have.delete(str)
# end
end
end
guess_have.each_pair do |x, y|
found = false
for i in 0..3
if G[num-1][i] == x
found = true
end
end
if not found
# puts 'guess' + x.to_s
guess_have.delete(x)
end
end
is_first = false
end
end
def guess(gh, gn)
# puts gn.length
gh.each_pair do |x, v|
# puts x
end
# puts gh.length
if gn.length == 9
ret = ""
for n in 0..9
if not gn.key?(n)
ret = n
end
end
return ret
end
gh.each_pair do |x, y|
if gn.key?(x)
gh.delete(x)
end
end
gh.each_pair do |x, y|
return x
end
end
puts guess(guess_have, guess_not)
naotest2