結果
| 問題 |
No.7 プライムナンバーゲーム
|
| コンテスト | |
| ユーザー |
tmino5263
|
| 提出日時 | 2019-08-01 11:31:27 |
| 言語 | Scala(Beta) (3.6.2) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 854 bytes |
| コンパイル時間 | 13,742 ms |
| コンパイル使用メモリ | 266,672 KB |
| 実行使用メモリ | 65,560 KB |
| 最終ジャッジ日時 | 2024-07-02 15:47:21 |
| 合計ジャッジ時間 | 26,325 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 11 WA * 6 |
ソースコード
object PrimeNumberGame extends App {
val n = io.StdIn.readInt()
val primeNumbers = sieve(Seq.range(2, n), Seq.empty)
println(s"${if (n - primeNumbers.last < 2) "Lose" else "Win"}")
def sieve(numbers: Seq[Int], result: Seq[Int]): Seq[Int] = {
if (numbers.length == 1) result :+ numbers.head else sieve(numbers.filter(_ % numbers.head != 0), result :+ numbers.head)
}
def vs(n: Int, primeNumbers: Seq[Int]): String = {
if (n <= 3) "Lose"
else {
val nDash = n - primeNumbers.filter(n - _ >= 2).last
val primeNumbersDash = primeNumbers.filter(nDash - _ >= 2)
if (nDash <= 3) "Win"
else {
val nDashDash = nDash - primeNumbersDash.filter(nDash - _ >= 2).last
val primeNumbersDashDash = primeNumbersDash.filter(nDashDash - _ >= 2)
vs(nDashDash, primeNumbersDashDash)
}
}
}
}
tmino5263