aizu_online_judge/dpl/
dpl_1_f.rs

1#[doc(no_inline)]
2pub use competitive::combinatorial_optimization::KnapsackPloblemSmallValue;
3use competitive::prelude::*;
4
5#[verify::aizu_online_judge("DPL_1_F")]
6pub fn dpl_1_f(reader: impl Read, mut writer: impl Write) {
7    let s = read_all_unchecked(reader);
8    let mut scanner = Scanner::new(&s);
9    scan!(scanner, n, w: i64, vw: [(usize, i64); n]);
10    let mut knapsack = KnapsackPloblemSmallValue::new(vw.iter().map(|&(v, _)| v).sum::<usize>());
11    knapsack.extend01(vw);
12    writeln!(writer, "{}", knapsack.solve(w).unwrap_or_default()).ok();
13}