結果
| 問題 |
No.7 プライムナンバーゲーム
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2017-08-15 14:28:01 |
| 言語 | JavaScript (node v23.5.0) |
| 結果 |
AC
|
| 実行時間 | 413 ms / 5,000 ms |
| コード長 | 524 bytes |
| コンパイル時間 | 198 ms |
| コンパイル使用メモリ | 5,120 KB |
| 実行使用メモリ | 48,904 KB |
| 最終ジャッジ日時 | 2024-10-01 16:06:04 |
| 合計ジャッジ時間 | 6,013 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 17 |
ソースコード
let i = require('fs').readFileSync('/dev/stdin', 'utf8').split('\n')[0]
let p = Array.from(new Array(i - 1)).map((e,i) => i+2)
let t = []
for (let c = 0; p[c] <= Math.sqrt(i);) {
t.push(p[c])
p = p.filter((e) => e % p[c] != 0)
}
p = t.concat(p)
let a = Array.from(new Array(i + 1)).fill(void 0)
a[0] = a[1] = true
const f = (n) => {
let r = true
for (let e of p) {
if (e > n) break
if (a[n - e] === void 0) r &= f(n - e)
else r &= a[n - e]
}
a[n] = !r
return !r
}
console.log(f(i) ? 'Win' : 'Lose')