From ff58eb7f8744beff4ff1157f9e169b9b827db611 Mon Sep 17 00:00:00 2001 From: Aleksa Vuckovic Date: Thu, 7 Dec 2023 03:06:25 +0100 Subject: day6 --- src/day6pt1.rs | 29 +++++++++++++++++++++++++++++ src/day6pt2.rs | 23 +++++++++++++++++++++++ src/main.rs | 4 ++-- 3 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 src/day6pt1.rs create mode 100644 src/day6pt2.rs (limited to 'src') diff --git a/src/day6pt1.rs b/src/day6pt1.rs new file mode 100644 index 0000000..0ea45b7 --- /dev/null +++ b/src/day6pt1.rs @@ -0,0 +1,29 @@ +pub fn main() { + let txt = std::fs::read_to_string("./input/day6.txt").unwrap(); + let lines: Vec<_> = txt + .lines() + .map(|s| { + s.split(":") + .collect::>() + .get(1) + .unwrap() + .split(" ") + .filter(|&x| !x.is_empty()) + .map(|r| r.parse::().unwrap()) + .collect::>() + }) + .collect(); + + let mut p: u32 = 1; + for i in 0..lines[0].len() { + let mut sum: u32 = 0; + for j in 1..lines[0][i] { + if (lines[0][i] - j) * j > lines[1][i] { + sum += 1; + } + } + p *= sum; + } + + println!("{:?}", p); +} diff --git a/src/day6pt2.rs b/src/day6pt2.rs new file mode 100644 index 0000000..867bd49 --- /dev/null +++ b/src/day6pt2.rs @@ -0,0 +1,23 @@ +pub fn main() { + let txt = std::fs::read_to_string("./input/day6.txt").unwrap(); + let lines: Vec<_> = txt + .lines() + .map(|s| { + s.split(":") + .collect::>() + .get(1) + .unwrap() + .replace(" ", "") + }) + .map(|s| s.parse::().unwrap()) + .collect(); + + let mut sum: u64 = 0; + for j in 1..lines[0] { + if (lines[0] - j) * j > lines[1] { + sum += 1; + } + } + + println!("{:?}", sum); +} diff --git a/src/main.rs b/src/main.rs index b3ad2f6..1eae0ee 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,5 +1,5 @@ -mod day5pt2; +mod day6pt2; fn main() { - day5pt2::main(); + day6pt2::main(); } -- cgit v1.2.3