Lukas Angerer преди 2 години
родител
ревизия
fb0010584c
променени са 5 файла, в които са добавени 58 реда и са изтрити 0 реда
  1. 6 0
      AdventOfCode23.sln
  2. 10 0
      Day8/Day8.csproj
  3. 19 0
      Day8/Parser.cs
  4. 14 0
      Day8/Program.cs
  5. 9 0
      Day8/inputs/sample1.txt

+ 6 - 0
AdventOfCode23.sln

@@ -17,6 +17,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day6", "Day6\Day6.csproj",
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day7", "Day7\Day7.csproj", "{E5E1B603-DBC7-4294-A07E-63ABB9ADD3AB}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day8", "Day8\Day8.csproj", "{9FD0976B-C003-485C-914E-A04ABB76B605}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
@@ -54,5 +56,9 @@ Global
 		{E5E1B603-DBC7-4294-A07E-63ABB9ADD3AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{E5E1B603-DBC7-4294-A07E-63ABB9ADD3AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{E5E1B603-DBC7-4294-A07E-63ABB9ADD3AB}.Release|Any CPU.Build.0 = Release|Any CPU
+		{9FD0976B-C003-485C-914E-A04ABB76B605}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{9FD0976B-C003-485C-914E-A04ABB76B605}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{9FD0976B-C003-485C-914E-A04ABB76B605}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{9FD0976B-C003-485C-914E-A04ABB76B605}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 EndGlobal

+ 10 - 0
Day8/Day8.csproj

@@ -0,0 +1,10 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <OutputType>Exe</OutputType>
+    <TargetFramework>net8.0</TargetFramework>
+    <ImplicitUsings>enable</ImplicitUsings>
+    <Nullable>enable</Nullable>
+  </PropertyGroup>
+
+</Project>

+ 19 - 0
Day8/Parser.cs

@@ -0,0 +1,19 @@
+using System.Text.RegularExpressions;
+
+namespace Day8;
+
+public partial class Parser
+{
+    [GeneratedRegex(@".*")]
+    private partial Regex LineMatch();
+    
+    public void Parse(string inputFile)
+    {
+        using var reader = File.OpenText(inputFile);
+
+        while (!reader.EndOfStream)
+        {
+            var line = reader.ReadLine()!;
+        }
+    }
+}

+ 14 - 0
Day8/Program.cs

@@ -0,0 +1,14 @@
+using Day8;
+
+if (args.Length < 1)
+{
+    Console.WriteLine("Requires 1 args: inputFileName");
+    return -1;
+}
+
+var inputFile = args[0];
+var parser = new Parser();
+
+parser.Parse(inputFile);
+
+return 0;

+ 9 - 0
Day8/inputs/sample1.txt

@@ -0,0 +1,9 @@
+RL
+
+AAA = (BBB, CCC)
+BBB = (DDD, EEE)
+CCC = (ZZZ, GGG)
+DDD = (DDD, DDD)
+EEE = (EEE, EEE)
+GGG = (GGG, GGG)
+ZZZ = (ZZZ, ZZZ)