This commit is contained in:
Spectre 2024-12-03 02:06:24 +01:00
parent 19fe0a53ff
commit 2c9790a690
7 changed files with 48 additions and 26 deletions

View file

@ -24,23 +24,31 @@ fn main() {
fetch_input(year, day).expect("Set ADVENT_TOKEN to the correct session cookie to fetch input automatically");
}
println!("Attempting to run {year}/{day}");
let Ok(data) = load_actual(year, day)
else { panic!("No Input Data"); };
let now = Instant::now();
let part1 = solution(&data, year, day, 1).unwrap();
let elapsed1 = now.elapsed();
let now = Instant::now();
let part2 = solution(&data, year, day, 2).unwrap();
let elapsed2 = now.elapsed();
println!("Part 1 result is {}, took {}ms", part1, elapsed1.as_millis());
println!("Part 2 result is {}, took {}ms", part2, elapsed2.as_millis());
run_all();
}
fn run_all() {
let years_to_run = [2023, 2024];
if env::var("ADVENT_TOKEN").is_ok() {
for year in years_to_run {
for day in 1..=25 {
println!("Pre-fetching input for {year}/{:02}", day);
fetch_input(year, day).expect("Set ADVENT_TOKEN to the correct session cookie to fetch input automatically");
}
}
}
for year in years_to_run {
for day in 1..=25 {
for part in [1, 2] {
let input = load_actual(year, day).unwrap_or_else(|_| panic!("Missing input for {}/{:02}", year, day));
let now = Instant::now();
let result = solution(&input, year, day, part).unwrap_or_else(|| panic!("No solution at {}/{:02}", year, day));
let time_passed = now.elapsed().as_millis();
println!("Running Year {}, Day {:02}, Part {} - Result {} - took {}ms", year, day, part, result, time_passed);
}
}
}
}