From 94d08269630fb976ad0a04d4e842ec74b54299f5 Mon Sep 17 00:00:00 2001 From: jacopograndi Date: Mon, 21 Mar 2022 13:41:51 +0100 Subject: no submodule --- 2020/day01/src/main.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 2020/day01/src/main.rs (limited to '2020/day01/src/main.rs') diff --git a/2020/day01/src/main.rs b/2020/day01/src/main.rs new file mode 100644 index 0000000..02a3151 --- /dev/null +++ b/2020/day01/src/main.rs @@ -0,0 +1,22 @@ +use std::fs; +use std::process; + +fn main() { + let raw = fs::read_to_string("input.txt").unwrap_or_else(|err| { + println!("Failed to open file. {}", err); + process::exit(1); + } ); + + let nums : Vec = raw.lines() + .map(|x| x.parse().unwrap()) + .collect(); + + let res : Vec = nums.iter() + .map(|&x| nums.iter().map(move |&y| (x, y))) + .flatten() + .filter(|(x, y)| x+y == 2020) + .map(|(x, y)| x*y) + .collect(); + + println!("x+y = 2020, x*y = {}", res.first().unwrap()); +} -- cgit v1.2.3-54-g00ecf