From fa26f694d8cf98272763952a698301ee9935c19e Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Thu, 26 Jun 2025 09:47:23 +0200 Subject: Added 2022, first few problems --- 2022/03/a.rs | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 2022/03/a.rs (limited to '2022/03/a.rs') diff --git a/2022/03/a.rs b/2022/03/a.rs new file mode 100644 index 0000000..568546c --- /dev/null +++ b/2022/03/a.rs @@ -0,0 +1,26 @@ +mod common; +use common::*; + +fn get_rep_val(rucksack: &[u8]) -> i64 { + let mut seen = [false; 256]; + let mid = rucksack.len()/2; + for i in 0..mid { + seen[rucksack[i] as usize] = true; + } + for i in mid..rucksack.len() { + if seen[rucksack[i] as usize] { + return value(rucksack[i] as char); + } + } + panic!("Could not find repeated char"); +} + +fn main() { + let mut sum = 0; + let mut line = String::new(); + while std::io::stdin().read_line(&mut line).unwrap() > 0 { + sum += get_rep_val(line.as_bytes()); + line.clear(); + } + println!("{sum}"); +} -- cgit v1.3