結果
問題 |
No.1312 Snake Eyes
|
ユーザー |
![]() |
提出日時 | 2020-12-09 00:22:04 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 32 ms / 2,000 ms |
コード長 | 717 bytes |
コンパイル時間 | 12,898 ms |
コンパイル使用メモリ | 377,168 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-30 12:56:26 |
合計ジャッジ時間 | 14,109 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 85 |
ソースコード
fn main() { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); let n: u64 = s.trim().parse().unwrap(); let cond = |p: u64| -> bool { if p <= 1 { return false; } let v = n % p; let mut n = n; while n > 0 { if n % p != v { return false; } n /= p; } true }; let mut ans = n + 1; for p in (1..).take_while(|p| p * p <= n) { if cond(p) { ans = ans.min(p); } if n % p == 0 { let p = n / p - 1; if cond(p) { ans = ans.min(p); } } } println!("{}", ans); }