結果
問題 |
No.3296 81-like number
|
ユーザー |
👑 |
提出日時 | 2025-10-05 13:43:50 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 699 bytes |
コンパイル時間 | 11,101 ms |
コンパイル使用メモリ | 398,628 KB |
実行使用メモリ | 7,716 KB |
最終ジャッジ日時 | 2025-10-05 13:44:04 |
合計ジャッジ時間 | 12,303 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 15 |
ソースコード
use proconio::input; fn solve() -> u64 { input! { n: u64, } let primes = eratosthenes(200000); let mut ans = 0; for &p in &primes { let p = p as u64; let mut x = p * p; while x <= n { ans += x; x = x.saturating_mul(p); } } ans } fn main() { let ans = solve(); println!("{}", ans); } fn eratosthenes(n: usize) -> Vec<usize> { let mut arr = vec![true; n + 1]; arr[0] = false; arr[1] = false; let mut i = 2; while i * i <= n { if arr[i] { for x in i..=(n / i) { arr[i * x] = false; } } i += 1; } let mut primes = Vec::new(); for j in 0..=n { if arr[j] { primes.push(j); } } primes }