Please sign in first.
Submission #40766226
Source Code Expand
use proconio::input;
macro_rules! chmax {
($max_v: expr, $v: expr) => {
if $v > $max_v {
$max_v = $v;
true
} else {
false
}
};
}
fn main() {
input! {
capital_n: usize,
capital_w: usize,
wv: [(usize, usize); capital_n],
}
let mut dp = vec![vec![0; capital_w + 1]; capital_n + 1];
for (i, (w, v)) in wv.iter().copied().enumerate() {
for j in 0..=capital_w {
chmax!(
dp[i + 1][j],
dp[i][j].max(if j < w { 0 } else { dp[i][j - w] + v })
);
}
}
let ans = dp[capital_n].iter().copied().max().unwrap();
println!("{}", ans);
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - Knapsack 1 |
| User | bouzuya |
| Language | Rust (1.42.0) |
| Score | 100 |
| Code Size | 714 Byte |
| Status | AC |
| Exec Time | 91 ms |
| Memory | 81136 KiB |
Judge Result
| Set Name | All | ||
|---|---|---|---|
| Score / Max Score | 100 / 100 | ||
| Status |
|
| Set Name | Test Cases |
|---|---|
| All | 0_00, 0_01, 0_02, 1_00, 1_01, 1_02, 1_03, 1_04, 1_05, 1_06, 1_07, 1_08, 1_09 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 0_00 | AC | 6 ms | 2108 KiB |
| 0_01 | AC | 4 ms | 2080 KiB |
| 0_02 | AC | 1 ms | 1904 KiB |
| 1_00 | AC | 3 ms | 2724 KiB |
| 1_01 | AC | 88 ms | 81136 KiB |
| 1_02 | AC | 82 ms | 78344 KiB |
| 1_03 | AC | 86 ms | 79752 KiB |
| 1_04 | AC | 88 ms | 79872 KiB |
| 1_05 | AC | 91 ms | 79796 KiB |
| 1_06 | AC | 87 ms | 80564 KiB |
| 1_07 | AC | 87 ms | 79792 KiB |
| 1_08 | AC | 86 ms | 79428 KiB |
| 1_09 | AC | 90 ms | 80544 KiB |