[CLEANUP] Cleaned up the code for day 4

This commit is contained in:
2022-12-04 19:01:05 +01:00
parent 1e189fb333
commit 08a0576ac3

View File

@@ -1,4 +1,3 @@
use regex::Regex;
use crate::day_solver::DaySolver;
use super::util;
@@ -23,25 +22,6 @@ impl Day4 {
// let lines = util::read_file("input/day4_example.txt");
let lines = util::read_file("input/day4.txt");
// let re = Regex::new(r"(\d+)-(\d+),(\d+)-(\d+)").unwrap();
// // Put the input into the day struct
// return Day4 {
// elfs: lines.iter().map(|s| {
// let caps = re.captures(s.as_ref())
// .unwrap();
// ElfPair {
// range1: Range {
// start: caps.get(1).unwrap().as_str().parse().unwrap(),
// end: caps.get(2).unwrap().as_str().parse().unwrap()
// },
// range2: Range {
// start: caps.get(3).unwrap().as_str().parse().unwrap(),
// end: caps.get(4).unwrap().as_str().parse().unwrap()
// },
// }
// })
// .collect()
// }
return Day4 {
elfs: lines.iter().map(|s| {
let mut split = s.split(",");
@@ -67,7 +47,9 @@ impl DaySolver for Day4 {
fn solve_part1(&mut self) -> String {
return self.elfs.iter()
.filter(|e| (e.range1.start >= e.range2.start && e.range1.end <= e.range2.end) || (e.range2.start >= e.range1.start && e.range2.end <= e.range1.end))
.filter(|e|
(e.range1.start >= e.range2.start && e.range1.end <= e.range2.end) ||
(e.range2.start >= e.range1.start && e.range2.end <= e.range1.end))
.count()
.to_string()
}