結果
| 問題 | No.308 素数は通れません |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-08-13 17:11:00 |
| 言語 | Rust (1.94.0 + proconio + num + itertools) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,079 bytes |
| 記録 | |
| コンパイル時間 | 1,151 ms |
| コンパイル使用メモリ | 177,780 KB |
| 実行使用メモリ | 5,888 KB |
| 最終ジャッジ日時 | 2026-08-13 17:11:29 |
| 合計ジャッジ時間 | 6,282 ms |
|
ジャッジサーバーID (参考情報) |
judge1_1 / judge2_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 97 WA * 10 |
ソースコード
fn getline() -> String {
let mut ret = String::new();
std::io::stdin().read_line(&mut ret).unwrap();
ret
}
fn calc(n: i128) -> i64 {
if n >= 26 {
return 8;
}
if n == 8 || n == 9 || n == 10 || n == 15 || n == 16 || n == 22 {
return 7;
}
let n = n as i64;
(n / 2) * 2 - 1
}
// https://yukicoder.me/problems/no/308 (4)
// 実験すると、W=8,N>=26であればクリア可能であること、W<=7のときは有限個のマス目にしか行けないことがわかる。
// - W=8 であれば 1-9-10-18-26-27-28-20-21-22-14-15-16 という経路があり、ここで全ての4以上の偶数に到達できる。
// W=2,4,6のときは1のみ、W=3のときは[1,4]のみ、W=5のときは[1,6]のみ、W=7のときは[1,8,9,10,15,16,22]のみ。
// ここで列挙されていないものについて、以下の様にクリアできる。
// 12: W=11
// 14: W=13
// 18: W=17
// 20: W=19
// 21: W=19
// 24: W=23
// 25: W=23
fn main() {
let n = getline().trim().parse::<i128>().unwrap();
println!("{}", calc(n));
}