結果

問題 No.7 プライムナンバーゲーム
ユーザー fine
提出日時 2016-03-23 00:52:51
言語 Ruby
(3.4.1)
結果
WA  
(最新)
AC  
(最初)
実行時間 -
コード長 780 bytes
コンパイル時間 314 ms
コンパイル使用メモリ 7,552 KB
実行使用メモリ 26,368 KB
最終ジャッジ日時 2024-10-09 16:33:36
合計ジャッジ時間 4,165 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 15 WA * 2
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

require 'prime'

def hoge a,b
    if a
        return b
    else
        return !b
    end
end
def sol n,f,memo
    if memo[n - 2] != nil
        return hoge(f,memo[n - 2])
    end
    if n < 2 
        memo[n - 2] = hoge(f,f)
        return f
    elsif n < 4
        memo[n - 2] = hoge(f,!f)
        return !f
    end
    Prime.each(n).to_a.reverse.each{|x|
        if f
            if sol(n - x,false,memo)
                memo[n - 2] = true
                return true
            end
        else
            if !sol(n - x,true,memo)
                memo[n - 2] = true
                return false
            end
        end
        }
    memo[n - 2] = false
    return !f
end

n = gets.to_i
memo = Array.new(n - 2)
if sol(n,true,memo)
    puts 'Win'
else
    puts 'Lose'
end
0