fn solve( monkeys: &[Monkey], play: impl Fn(&[Monkey], Vec<(usize, u64)>) -> [u64; 8], ) -> u64
Convenience wrapper to reuse common logic between part one and two.