diff options
-rw-r--r-- | src/day_1.rs | 2 | ||||
-rw-r--r-- | src/day_2.rs | 2 | ||||
-rw-r--r-- | src/day_3.rs | 2 | ||||
-rw-r--r-- | src/day_4.rs | 20 | ||||
-rw-r--r-- | src/main.rs | 8 |
5 files changed, 17 insertions, 17 deletions
diff --git a/src/day_1.rs b/src/day_1.rs index 6e04a6a..b786999 100644 --- a/src/day_1.rs +++ b/src/day_1.rs @@ -1,6 +1,6 @@ use anyhow::Result; -pub fn day_1() -> Result<()> { +pub fn solve() -> Result<()> { let input = include_str!("../input/day_1.txt"); println!("day 1"); println!("part 1: {}", part_1(input)); diff --git a/src/day_2.rs b/src/day_2.rs index 019e745..3222289 100644 --- a/src/day_2.rs +++ b/src/day_2.rs @@ -104,7 +104,7 @@ impl FromStr for Shape { } } -pub fn day_2() -> Result<()> { +pub fn solve() -> Result<()> { let input = include_str!("../input/day_2.txt"); println!("day 2"); diff --git a/src/day_3.rs b/src/day_3.rs index 5335624..a49839a 100644 --- a/src/day_3.rs +++ b/src/day_3.rs @@ -2,7 +2,7 @@ use std::{ops::Deref, str::FromStr}; use anyhow::{anyhow, Context, Result}; -pub fn day_3() -> Result<()> { +pub fn solve() -> Result<()> { let input = include_str!("../input/day_3.txt"); println!("day 3"); diff --git a/src/day_4.rs b/src/day_4.rs index 6409f86..c7ec637 100644 --- a/src/day_4.rs +++ b/src/day_4.rs @@ -2,16 +2,6 @@ use std::ops::Range; use anyhow::Result; -pub fn day_4() -> Result<()> { - let input = include_str!("../input/day_4.txt"); - - println!("day 4"); - println!("part 1: {}", part_1(input)?); - println!("part 2: {}", part_2(input)?); - - Ok(()) -} - pub fn parse_range(section: &str) -> Result<Range<usize>> { let (start, end) = section.split_once('-').unwrap(); let start = start.parse::<usize>()?; @@ -33,6 +23,16 @@ fn range_is_union((a, b): &(Range<usize>, Range<usize>)) -> bool { (a.start <= b.start && a.end >= b.start) || (b.start <= a.start && b.end >= a.start) } +pub fn solve() -> Result<()> { + let input = include_str!("../input/day_4.txt"); + + println!("day 4"); + println!("part 1: {}", part_1(input)?); + println!("part 2: {}", part_2(input)?); + + Ok(()) +} + pub fn part_1(input: &str) -> Result<usize> { let ranges: Vec<_> = input.lines().map(parse_pair).collect::<Result<_>>()?; Ok(ranges.into_iter().filter(range_is_subset).count()) diff --git a/src/main.rs b/src/main.rs index b06c9d1..1511ea6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2,10 +2,10 @@ use advent_of_code_2022::{day_1, day_2, day_4, day_3}; use anyhow::Result; fn main() -> Result<()> { - day_1::day_1()?; - day_2::day_2()?; - day_3::day_3()?; - day_4::day_4()?; + day_1::solve()?; + day_2::solve()?; + day_3::solve()?; + day_4::solve()?; Ok(()) } |