/****************************************************************************** * @file main.rs * @author Joey Pollack * @date 2024/12/03 (y/m/d) * @modified 2024/12/03 (y/m/d) * @copyright Joseph R Pollack * @brief Advent of Code 2024 main file ******************************************************************************/ use day_1::day_1::Day1; use day_2::day_2::Day2; use day_3::day_3::Day3; use day_4::day_4::Day4; use day_5::day_5::Day5; use day_6::day_6::Day6; use solver_base::solver_base::{Solver, DataSet, RunMode}; fn main() { // DAY 1 let mut day_1 = Day1::new(); day_1.init(DataSet::Full, RunMode::FirstCase, false); let day1_result = day_1.solve(); println!("Day 1 Part 1 Final Result: {}", day1_result); let mut day_1 = Day1::new(); day_1.init(DataSet::Full, RunMode::SecondCase, false); let day1_result = day_1.solve(); println!("Day 1 Part 2 Final Result: {}", day1_result); println!("-------------------------"); // DAY 2 let mut day_2 = Day2::new(); day_2.init(DataSet::Full, RunMode::FirstCase, false); let day2_result = day_2.solve(); println!("Day 2 Part 1 Final Result: {}", day2_result); let mut day_2 = Day2::new(); day_2.init(DataSet::Full, RunMode::SecondCase, false); let day2_result = day_2.solve(); println!("Day 2 Part 2 Final Result: {}", day2_result); println!("-------------------------"); // DAY 3 let mut day_3 = Day3::new(); day_3.init(DataSet::Full, RunMode::FirstCase, false); let day3_result = day_3.solve(); println!("Day 3 Part 1 Final Result: {}", day3_result); let mut day_3 = Day3::new(); day_3.init(DataSet::Full, RunMode::SecondCase, false); let day3_result = day_3.solve(); println!("Day 3 Part 2 Final Result: {}", day3_result); println!("-------------------------"); // DAY 4 let mut day_4 = Day4::new(); day_4.init(DataSet::Full, RunMode::FirstCase, false); let day4_result = day_4.solve(); println!("Day 4 Part 1 Final Result: {}", day4_result); let mut day_4 = Day4::new(); day_4.init(DataSet::Full, RunMode::SecondCase, false); let day4_result = day_4.solve(); println!("Day 4 Part 2 Final Result: {}", day4_result); println!("-------------------------"); // DAY 5 let mut day_5 = Day5::new(); day_5.init(DataSet::Full, RunMode::FirstCase, false); let day5_result = day_5.solve(); println!("Day 5 Part 1 Final Result: {}", day5_result); let mut day_5 = Day5::new(); day_5.init(DataSet::Full, RunMode::SecondCase, false); let day5_result = day_5.solve(); println!("Day 5 Part 2 Final Result: {}", day5_result); println!("-------------------------"); // DAY 6 let mut day_6 = Day6::new(); day_6.init(DataSet::Full, RunMode::FirstCase, false); let day6_result = day_6.solve(); println!("Day 6 Part 1 Final Result: {}", day6_result); // let mut day_6 = Day6::new(); // day_6.init(DataSet::Full, RunMode::SecondCase, false); // let day6_result = day_6.solve(); // println!("Day 6 Part 2 Final Result: {}", day6_result); println!("-------------------------"); }