結果
| 問題 | No.102 トランプを奪え | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2017-05-19 08:16:19 | 
| 言語 | Ruby (3.4.1) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 91 ms / 5,000 ms | 
| コード長 | 614 bytes | 
| コンパイル時間 | 42 ms | 
| コンパイル使用メモリ | 7,424 KB | 
| 実行使用メモリ | 12,288 KB | 
| 最終ジャッジ日時 | 2024-09-18 22:35:08 | 
| 合計ジャッジ時間 | 1,634 ms | 
| ジャッジサーバーID (参考情報) | judge2 / judge1 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 8 | 
コンパイルメッセージ
Syntax OK
ソースコード
def scan; gets.split.map(&:to_i); end
@dp={}
def guchoku216(aa,turn=true)
    return !turn if aa.size == 0
    
    aa.sort!
    return @dp[aa+[turn]] if @dp[aa+[turn]]
    
    aa.each_index{|i|
        ac = aa.clone
        ac[i]-=1
        3.times{
            break if ac[i] <= 0
            return @dp[aa+[turn]] = turn if (guchoku216(ac.clone,!turn) == turn)
            ac[i]-=1
        }
        ac.delete(0)
        return @dp[aa+[turn]] = turn if (guchoku216(ac.clone,!turn) == turn)
    }
    return @dp[aa+[turn]] = !turn
end
nn = scan.map{|e|e%4}
nn.delete(0)
puts guchoku216(nn) ? "Taro" : "Jiro"
            
            
            
        