結果
| 問題 |
No.8 N言っちゃダメゲーム
|
| ユーザー |
はむ吉🐹
|
| 提出日時 | 2016-04-20 20:02:02 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 801 bytes |
| コンパイル時間 | 196 ms |
| コンパイル使用メモリ | 82,312 KB |
| 実行使用メモリ | 53,960 KB |
| 最終ジャッジ日時 | 2024-10-04 14:28:33 |
| 合計ジャッジ時間 | 7,222 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 3 TLE * 1 -- * 7 |
ソースコード
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import array
import itertools
import sys
# 所与の集合に含まれない最小の非負整数を返す関数
def mex(s):
for i in itertools.count():
if i not in s:
return i
def compute_grundy_number(n, k):
# Grundy数を格納する配列
gs = array.array("L", (0 for _ in range(n)))
# 渡された数がn - 1ならば負け
gs[n - 1] = 0
for i in range(0, n - 1)[::-1]:
new_nums = range(i + 1, min(n - 1, i + k) + 1)
gs[i] = mex(set(gs[j] for j in new_nums))
return gs[0]
def main():
p = int(input())
for _ in range(p):
n, k = map(int, input().split())
print("Win" if compute_grundy_number(n, k) != 0 else "Lose")
if __name__ == '__main__':
main()
はむ吉🐹