結果
問題 |
No.1267 Stop and Coin Game
|
ユーザー |
👑 |
提出日時 | 2022-07-10 15:14:24 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 535 ms / 2,000 ms |
コード長 | 610 bytes |
コンパイル時間 | 311 ms |
コンパイル使用メモリ | 82,344 KB |
実行使用メモリ | 84,584 KB |
最終ジャッジ日時 | 2025-01-03 07:30:19 |
合計ジャッジ時間 | 7,339 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 43 |
ソースコード
n, v = map(int, input().split()) A = list(map(int, input().split())) if sum(A) <= v: print("Draw") exit() win = [False] * (1 << n) for bit in range(1 << n): tot = 0 for i in range(n): if bit >> i & 1: tot += A[i] if tot > v: win[bit] = True for bit in range((1 << n) - 1, -1, -1): if win[bit]: continue win[bit] = False for i in range(n): if not bit >> i & 1: nbit = bit | (1 << i) if not win[nbit]: win[bit] = True break if win[0]: print("First") else: print("Second")