use std::collections::{HashMap, HashSet}; use shared::{Solution, Answer}; pub struct Day05; impl Solution for Day05 { fn part_1(&self, input: &str) -> Answer { let (p1, p2) = parse(input); // let res = p2.iter() // .filter(|&update| ) Answer::Unimplemented } fn part_2(&self, input: &str) -> Answer { Answer::Unimplemented } } fn parse(input: &str) -> (HashMap>, Vec>) { let (first, second) = input.split_once("\n\n").unwrap(); let mut out1: HashMap::> = HashMap::new(); for (a, b) in first .lines() .map(|s| s.split_once("|") .unwrap()) .map(|(a, b)| (a.parse::().unwrap(), b.parse::().unwrap())) { out1.entry(a).or_default().insert(b); }; let out2: Vec> = second.lines().map(|line| line.split(",").map(|x| x.parse::().unwrap()).collect()).collect(); (out1, out2) }