Skip to content

Commit

Permalink
past202206-open h
Browse files Browse the repository at this point in the history
  • Loading branch information
bouzuya committed Feb 1, 2023
1 parent db69925 commit 1c6b1ff
Showing 1 changed file with 39 additions and 3 deletions.
42 changes: 39 additions & 3 deletions past202206-open/src/bin/h.rs
@@ -1,10 +1,46 @@
use proconio::{input, marker::Usize1};
use proconio::input;

macro_rules! chmax {
($max_v: expr, $v: expr) => {
if $v > $max_v {
$max_v = $v;
true
} else {
false
}
};
}

fn main() {
input! {
n: usize,
a: [Usize1; n],
a: usize,
b: usize,
wv: [(usize, usize); n],
};
let ans = n - a.len();

let mut dp = vec![vec![vec![0_usize; b + 1]; a + 1]; n + 1];
for (i, (w, v)) in wv.iter().copied().enumerate() {
for j in 0..=a {
for k in 0..=b {
if j + w <= a {
chmax!(dp[i + 1][j + w][k], dp[i][j][k] + v);
}
if k + w <= b {
chmax!(dp[i + 1][j][k + w], dp[i][j][k] + v);
}
chmax!(dp[i + 1][j][k], dp[i][j][k]);
}
}
}

let mut max = 0_usize;
for j in 0..=a {
for k in 0..=b {
chmax!(max, dp[n][j][k]);
}
}

let ans = max;
println!("{}", ans);
}

0 comments on commit 1c6b1ff

Please sign in to comment.