dsalgo 0.3.10

A package for Datastructures and Algorithms.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::knapsack_01_dual_table_with_inf::knapsack_dual;

pub fn knapsack(
    inf: usize,
    vw: &[(usize, usize)],
    max_weight: usize,
) -> usize {
    knapsack_dual(inf, vw)
        .into_iter()
        .enumerate()
        .filter_map(|(v, w)| if w <= max_weight { Some(v) } else { None })
        .max()
        .unwrap()
}