AdventOfCode.Template
                                
                                 AdventOfCode.Template copied to clipboard
                                
                                    AdventOfCode.Template copied to clipboard
                            
                            
                            
                        Advent of Code C# (.NET 8) template. Based on AoCHelper (https://github.com/eduherminio/AoCHelper)
AdventOfCode.Template
Advent of Code template based on AoCHelper project.
It allows you to focus on solving AoC puzzles while providing you with some performance stats.
Problem example:
using AoCHelper;
using System.Threading.Tasks;
namespace AdventOfCode
{
    public class Day_01 : BaseDay
    {
        public override ValueTask<string> Solve_1() => new("Solution 1");
        public override ValueTask<string> Solve_2() => new("Solution 2");
    }
}
Output example:

Basic usage
- Create one class per advent day, following DayXXorDay_XXnaming convention and implementingAoCHelper.BaseDay.
- Place input files under Inputs/dir, followingXX.txtconvention.
- Read the input content from InputFilePathand solve the puzzle by implementingSolve_1()andSolve_2()!
By default, only your last problem will be solved when running the project. You can change that by behavior by modifying Program.cs.
Invoking different methods:
- 
Solver.SolveAll();→ solves all the days.
- 
Solver.SolveLast();→ solves only the last day.
- 
Solver.Solve<Day_XX>();→ solves only dayXX.
- 
Solver.Solve(new uint[] { XX, YY });→ solves only daysXXandYY.
- 
Solver.Solve(new [] { typeof(Day_XX), typeof(Day_YY) });→ same as above.
Providing a custom SolverConfiguration instance to any of those methods (availabe options described here):
- 
Solver.SolveLast(new SolverConfiguration() { ClearConsole = false } );→ solves only the last day providing a custom configuration.
- 
Solver.SolveAll(new SolverConfiguration() { ShowConstructorElapsedTime = true, ShowTotalElapsedTimePerDay = true, ElapsedTimeFormatSpecifier = "F3" } );→ solves all the days providing a custom configuration.
Advanced usage
Check AoCHelper README file for detailed information about how to override the default file naming and location conventions of your problem classes and input files.