結果
問題 | No.153 石の山 |
ユーザー |
![]() |
提出日時 | 2017-09-18 18:31:12 |
言語 | Nim (2.2.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 766 bytes |
コンパイル時間 | 2,944 ms |
コンパイル使用メモリ | 66,692 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-06-30 03:12:56 |
合計ジャッジ時間 | 3,965 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 27 |
コンパイルメッセージ
/home/judge/data/code/Main.nim(1, 8) Warning: imported and not used: 'sequtils' [UnusedImport]
ソースコード
import sequtils,strutils var N = stdin.readline.parseInt memo : array[101, int] flag : array[101, bool] flag[1] = true proc grundy(x : int) : int = if flag[x]: return memo[x] var g : array[7, bool] a : int if (x and 1) == 0 and x >= 2: g[0] = true if (x and 1) == 1 and x >= 3: g[grundy(x div 2) xor grundy(x div 2 + 1)] = true if x mod 3 == 0 and x >= 3: g[grundy(x div 3)] = true if x mod 3 == 1 and x >= 4: g[grundy(x div 3 + 1)] = true if x mod 3 == 2 and x >= 5: g[grundy(x div 3)] = true for i in 0..6: if g[i] == false: memo[x] = i flag[x] = true return i if grundy(N) == 0: echo "B" else: echo "A"