From 48e7a6537dc2b0411db18705af5c95062a901d03 Mon Sep 17 00:00:00 2001 From: Andreas Grois Date: Thu, 2 Dec 2021 18:47:14 +0100 Subject: Initial --- src/day1.rs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 src/day1.rs (limited to 'src/day1.rs') diff --git a/src/day1.rs b/src/day1.rs new file mode 100644 index 0000000..e5dd408 --- /dev/null +++ b/src/day1.rs @@ -0,0 +1,16 @@ +use aoc_runner_derive::*; +use std::str::FromStr; + +#[aoc_generator(day1)] +pub fn input_generator<'c>(input : &'c str) -> Vec{ + input.lines().map(u32::from_str).map(Result::unwrap).collect() +} + +#[aoc(day1, part1)] +pub fn solve_part1(input : &Vec) -> u32 { + struct Helper { + count : u32, + prev : u32, + } + input.iter().fold(Helper{count:0,prev:u32::MAX},|x ,curr| -> Helper {if curr > &x.prev {Helper{count : x.count + 1, prev : *curr}} else {Helper{count : x.count, prev : *curr}}}).count +} -- cgit v1.2.3