(v: &[usize])
| 41 | } |
| 42 | |
| 43 | fn part_two(v: &[usize]) -> usize { |
| 44 | let mut dp = HashMap::new(); |
| 45 | dp.insert(0, 1); |
| 46 | for &i in v { |
| 47 | let ans = |
| 48 | dp.get(&(i-1)).unwrap_or(&0) + |
| 49 | dp.get(&(i-2)).unwrap_or(&0) + |
| 50 | dp.get(&(i-3)).unwrap_or(&0); |
| 51 | dp.insert(i, ans); |
| 52 | } |
| 53 | dp[v.last().unwrap()] |
| 54 | } |
| 55 | |
| 56 | aoc2020::main! { |
| 57 | let v = INPUT.iter() |