diff options
Diffstat (limited to 'src/2021/11/mod.rs')
-rw-r--r-- | src/2021/11/mod.rs | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/2021/11/mod.rs b/src/2021/11/mod.rs index 38a1836..c153ddc 100644 --- a/src/2021/11/mod.rs +++ b/src/2021/11/mod.rs @@ -1,4 +1,4 @@ -use crate::util::grid::*; +use crate::prelude::*; fn iterate(grid: &mut Grid<(u8, bool)>) -> i64 { let mut flashes = 0; @@ -42,16 +42,14 @@ fn iterate(grid: &mut Grid<(u8, bool)>) -> i64 { flashes } -pub fn parse(fh: std::fs::File) -> anyhow::Result<Grid<(u8, bool)>> { - Ok( - crate::util::parse::digit_grid(crate::util::parse::lines(fh)) - .indexed_cells() - .map(|((row, col), cell)| ((row, col), (*cell, false))) - .collect(), - ) +pub fn parse(fh: File) -> Result<Grid<(u8, bool)>> { + Ok(parse::digit_grid(parse::lines(fh)) + .indexed_cells() + .map(|((row, col), cell)| ((row, col), (*cell, false))) + .collect()) } -pub fn part1(mut map: Grid<(u8, bool)>) -> anyhow::Result<i64> { +pub fn part1(mut map: Grid<(u8, bool)>) -> Result<i64> { let mut flashes = 0; for _ in 0..100 { flashes += iterate(&mut map); @@ -59,7 +57,7 @@ pub fn part1(mut map: Grid<(u8, bool)>) -> anyhow::Result<i64> { Ok(flashes) } -pub fn part2(mut map: Grid<(u8, bool)>) -> anyhow::Result<i64> { +pub fn part2(mut map: Grid<(u8, bool)>) -> Result<i64> { let mut step = 1; loop { let flashes = iterate(&mut map); @@ -74,11 +72,11 @@ pub fn part2(mut map: Grid<(u8, bool)>) -> anyhow::Result<i64> { #[test] fn test() { assert_eq!( - part1(parse(crate::util::data(2021, 11).unwrap()).unwrap()).unwrap(), + part1(parse(parse::data(2021, 11).unwrap()).unwrap()).unwrap(), 1673 ); assert_eq!( - part2(parse(crate::util::data(2021, 11).unwrap()).unwrap()).unwrap(), + part2(parse(parse::data(2021, 11).unwrap()).unwrap()).unwrap(), 279 ); } |