use std::fs; #[allow(dead_code)] pub fn solve() { let file = fs::read_to_string("src/day5/input.txt").expect("You didn't provide input.txt."); let mut reading_ranges = true; let mut fresh_products = vec![]; let mut ranges = vec![]; for line in file.lines() { if line.is_empty() { reading_ranges = false; continue; } if reading_ranges { let mut parts = line.split("-"); let start = parts.next().unwrap().parse::().unwrap(); let end = parts.next().unwrap().parse::().unwrap(); let range = start..=end; ranges.push(range); } else { let value = line.parse::().unwrap(); for range in &ranges { if range.contains(&value) { fresh_products.push(value); break; } } } } println!("Fresh products: {:?}", fresh_products.len()); }