結果
問題 |
No.3145 Astral Parentheses Sequence
|
ユーザー |
|
提出日時 | 2025-05-17 02:44:27 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 537 bytes |
コンパイル時間 | 13,752 ms |
コンパイル使用メモリ | 390,216 KB |
実行使用メモリ | 7,844 KB |
最終ジャッジ日時 | 2025-05-17 02:44:43 |
合計ジャッジ時間 | 14,447 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 45 |
ソースコード
use proconio::input; fn main() { input! { n: usize, m: u64, } let ans = solve(n, m); println!("{}", ans); } fn solve(n: usize, m: u64) -> u64 { if n % 3 != 0 { return 0; } let n = n / 3; let mut dp = vec![0; n + 1]; // one let mut ep = vec![0; n + 1]; // multi ep[0] = 1; for i in 1..=n { dp[i] = ((0..i).map(|j| ep[j] * ep[i - 1 - j] % m).sum::<u64>()) % m; ep[i] = (dp[i] + (1..i).map(|j| ep[j] * dp[i - j] % m).sum::<u64>()) % m; } ep[n] }