RosettaCodeData/Task/Count-the-coins/Rust/count-the-coins.rust

17 lines
407 B
Text
Raw Permalink Normal View History

2017-09-23 10:01:46 +02:00
fn make_change(coins: &[usize], cents: usize) -> usize {
let size = cents + 1;
let mut ways = vec![0; size];
ways[0] = 1;
for &coin in coins {
for amount in coin..size {
ways[amount] += ways[amount - coin];
}
}
ways[cents]
}
fn main() {
println!("{}", make_change(&[1,5,10,25], 100));
2018-06-22 20:57:24 +00:00
println!("{}", make_change(&[1,5,10,25,50,100], 100_000));
2017-09-23 10:01:46 +02:00
}