結果
問題 | No.2176 LRM Question 1 |
ユーザー |
![]() |
提出日時 | 2023-01-06 22:31:56 |
言語 | Rust (1.83.0 + proconio) |
結果 |
WA
|
実行時間 | - |
コード長 | 613 bytes |
コンパイル時間 | 12,375 ms |
コンパイル使用メモリ | 384,564 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-11-30 18:55:51 |
合計ジャッジ時間 | 13,437 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 13 WA * 9 |
ソースコード
fn main() { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); let mut itr = s.trim().split_whitespace(); let l: usize = itr.next().unwrap().parse().unwrap(); let r: usize = itr.next().unwrap().parse().unwrap(); let m: usize = itr.next().unwrap().parse().unwrap(); let fact = |x| { let mut y = 1; for i in 1..=x { y *= i; } y }; let mut ans: usize = 0; for i in l..=r { let mut x = 1; for j in 1..=i { if fact(j) % m == 0 { x = 0; break; } else { x = (x % m) * fact(j) } } ans = (ans + x) % m; if x % m == 0 { break; } } println!("{}", ans); }