27 lines
675 B
C#
27 lines
675 B
C#
using System.Reflection;
|
|
|
|
namespace AdventOfCode.Days;
|
|
|
|
public abstract class Day
|
|
{
|
|
public abstract int Number { get; }
|
|
public abstract string Name { get; }
|
|
|
|
protected string Input { get; private set; } = null!;
|
|
|
|
public abstract void RunPart1(bool display = true);
|
|
public abstract void RunPart2(bool display = true);
|
|
|
|
public void ReadInput()
|
|
{
|
|
using var inputStream = Assembly.GetExecutingAssembly()
|
|
.GetManifestResourceStream($"AdventOfCode.Inputs.Day{Number}.txt")!;
|
|
|
|
Input = new StreamReader(inputStream).ReadToEnd();
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
return $"Day {Number}: {Name}";
|
|
}
|
|
} |