add level 3 and backport textparser changes

This commit is contained in:
2024-12-04 12:47:10 +01:00
parent 377ef9afe8
commit 5b9ad5766b
10 changed files with 208 additions and 9 deletions

View File

@@ -0,0 +1,43 @@
namespace AoC24;
using AoC24.Common;
using AoCLevelInputProvider;
using Parsing;
using Parsing.Schema;
public class LevelXSolver_Fragment : FragmentLevelSolverBase
{
public override int LevelNumber
{
// TODO: update level number, csproj file and rename class!
get { return 1; }
}
protected override FragmentSchemaBuilder DefineInputSchema(FragmentSchemaBuilder schemaBuilder)
{
return schemaBuilder
.Repeat()
.Expect(InputType.Integer)
.EndRepetition();
}
public override string SolveFirstStar()
{
var data = this.GetData()
.AsFragments();
// TODO: implement
return string.Empty;
}
public override string SolveSecondStar()
{
var data = this.GetData()
.AsFragments();
// TODO: implement
return string.Empty;
}
}

View File

@@ -5,7 +5,7 @@ using AoCLevelInputProvider;
using Parsing;
using Parsing.Schema;
public class LevelXSolver : LevelSolverBase
public class LevelXSolver_FullText : FullTextLevelSolverBase
{
public override int LevelNumber
{

View File

@@ -2,9 +2,10 @@
using AoC24;
var levelSolver = new LevelXSolver();
var solution1 = levelSolver.SolveFirstStar();
var solution2 = levelSolver.SolveSecondStar();
var levelSolver1 = new LevelXSolver_FullText();
var levelSolver2 = new LevelXSolver_Fragment();
var solution1 = levelSolver1.SolveFirstStar();
var solution2 = levelSolver2.SolveSecondStar();
if (!string.IsNullOrEmpty(solution1))
{