結果
問題 |
No.2148 ひとりUNO
|
ユーザー |
![]() |
提出日時 | 2022-12-06 17:03:52 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 230 ms / 2,000 ms |
コード長 | 903 bytes |
コンパイル時間 | 199 ms |
コンパイル使用メモリ | 7,552 KB |
実行使用メモリ | 12,544 KB |
最終ジャッジ日時 | 2024-10-13 06:46:37 |
合計ジャッジ時間 | 8,283 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 39 |
コンパイルメッセージ
Syntax OK
ソースコード
T = gets.to_i T.times do |t| n = gets.to_i cards = Hash.new { |h, k| h[k] = [] } n.times do c, d = gets.chomp.split d = d.to_i cards[c] << d end if t == 882 # pp cards end # pp cards if cards.size == 1 puts 'YES' else ok = false ['R', 'G', 'B'].permutation(3).each do |i, j, k| e1 = cards[i] & cards[j] e2 = cards[j] & cards[k] if e1.size >= 2 && e2.size >= 2 ok = true elsif e1.size >= 2 && e2.size >= 1 ok = true elsif e1.size >= 1 && e2.size >= 1 && (e1 | e2).size >= 2 ok = true elsif e1.size >= 1 && e2.size >= 1 && (cards[j].size == 1 || cards[k].size == 1) ok = true elsif e1.size >= 1 && cards[k].size == 0 ok = true end # pp [cards[i] & cards[j], cards[j] & cards[k]] end if ok puts 'YES' else puts 'NO' end end end