add: more days
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
use advent_of_code_2024::{make_main, SResult};
|
||||
use regex::Regex;
|
||||
|
||||
make_main!();
|
||||
|
||||
fn solve(lines: Vec<String>) -> SResult<usize> {
|
||||
let mut result = 0;
|
||||
let re = Regex::new(r"mul\((?<mul1>\d{1,3}),(?<mul2>\d{1,3})\)")?;
|
||||
for line in lines {
|
||||
for caps in re.captures_iter(&line) {
|
||||
result += caps["mul1"].parse::<usize>().unwrap() * caps["mul2"].parse::<usize>().unwrap();
|
||||
}
|
||||
}
|
||||
Ok(result)
|
||||
}
|
||||
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use advent_of_code_2024::input;
|
||||
|
||||
use super::*;
|
||||
#[test]
|
||||
fn sample_input() {
|
||||
let strings: Vec<String> = input!("d3p1.txt");
|
||||
let got = solve(strings).unwrap();
|
||||
assert_eq!(got, 161);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user