結果
問題 |
No.3014 岩井満足性問題
|
ユーザー |
|
提出日時 | 2025-02-07 00:11:17 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 624 ms / 3,000 ms |
コード長 | 942 bytes |
コンパイル時間 | 12,120 ms |
コンパイル使用メモリ | 401,576 KB |
実行使用メモリ | 9,856 KB |
最終ジャッジ日時 | 2025-02-07 00:11:37 |
合計ジャッジ時間 | 15,165 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 18 |
ソースコード
use proconio::input; fn main() { input! { n: usize, d: usize, k: usize, a: [i64; n], c: [usize; n], } let mut dpi = vec![vec![Option::<i64>::None; d + 1]; k + 1]; let mut dpi_nxt = dpi.clone(); dpi[0][0] = Some(0); for (&ai, &ci) in a.iter().zip(&c) { dpi_nxt.clone_from(&dpi); for j in 0..=k { let mut nj = j + ci; if nj > k { nj = k; } for l in 0..d { let Some(tmp) = dpi[j][l] else { continue; }; if dpi_nxt[nj][l + 1].is_some_and(|x| x >= tmp + ai) { continue; } dpi_nxt[nj][l + 1] = Some(tmp + ai); } } dpi.clone_from(&dpi_nxt); } if let Some(ans) = dpi[k][d] { println!("{ans}"); } else { println!("No"); } }