Files
2023/advent-of-code-2023.csproj
Parnic bf16614487 Day 21
I solved part 1 the naive way and was reasonably happy with it. I was successfully using that solution with some negative-modulus junk to brute force part 2 (I could get the correct answer for the example data's smaller number of steps), but there was no way it was completing in a reasonable amount of time or without blowing all my RAM. I was at a complete loss for how to solve part 2 the "smart" way, so I learned from this video: https://www.youtube.com/watch?v=9UOMZSL0JTg

I understand why this works now, but I was not going to be getting it on my own (nor did I really want to spend the time it would have taken me to attempt to arrive at a similar solution).
2023-12-21 09:50:37 -06:00

85 lines
3.2 KiB
XML

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<RootNamespace>aoc2023</RootNamespace>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
<EnforceCodeStyleInBuild>True</EnforceCodeStyleInBuild>
<LangVersion>latest</LangVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<WarningLevel>9999</WarningLevel>
<TreatWarningsAsErrors>True</TreatWarningsAsErrors>
<NoWarn>1701;1702;8981</NoWarn>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
<WarningLevel>9999</WarningLevel>
<TreatWarningsAsErrors>True</TreatWarningsAsErrors>
<NoWarn>1701;1702;8981</NoWarn>
</PropertyGroup>
<ItemGroup>
<None Remove="inputs\01.txt" />
<None Remove="inputs\01a.txt" />
<None Remove="inputs\01b.txt" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="inputs\01.txt" />
<EmbeddedResource Include="inputs\01a.txt" />
<EmbeddedResource Include="inputs\02.txt" />
<EmbeddedResource Include="inputs\02a.txt" />
<EmbeddedResource Include="inputs\03.txt" />
<EmbeddedResource Include="inputs\03a.txt" />
<EmbeddedResource Include="inputs\04.txt" />
<EmbeddedResource Include="inputs\04a.txt" />
<EmbeddedResource Include="inputs\05.txt" />
<EmbeddedResource Include="inputs\05a.txt" />
<EmbeddedResource Include="inputs\06.txt" />
<EmbeddedResource Include="inputs\06a.txt" />
<EmbeddedResource Include="inputs\07.txt" />
<EmbeddedResource Include="inputs\07a.txt" />
<EmbeddedResource Include="inputs\08.txt" />
<EmbeddedResource Include="inputs\08a.txt" />
<EmbeddedResource Include="inputs\08b.txt" />
<EmbeddedResource Include="inputs\08c.txt" />
<EmbeddedResource Include="inputs\09.txt" />
<EmbeddedResource Include="inputs\09a.txt" />
<EmbeddedResource Include="inputs\10.txt" />
<EmbeddedResource Include="inputs\10a.txt" />
<EmbeddedResource Include="inputs\11.txt" />
<EmbeddedResource Include="inputs\11a.txt" />
<EmbeddedResource Include="inputs\12.txt" />
<EmbeddedResource Include="inputs\12a.txt" />
<EmbeddedResource Include="inputs\13.txt" />
<EmbeddedResource Include="inputs\13a.txt" />
<EmbeddedResource Include="inputs\14.txt" />
<EmbeddedResource Include="inputs\14a.txt" />
<EmbeddedResource Include="inputs\15.txt" />
<EmbeddedResource Include="inputs\15a.txt" />
<EmbeddedResource Include="inputs\16.txt" />
<EmbeddedResource Include="inputs\16a.txt" />
<EmbeddedResource Include="inputs\17.txt" />
<EmbeddedResource Include="inputs\17a.txt" />
<EmbeddedResource Include="inputs\18.txt" />
<EmbeddedResource Include="inputs\18a.txt" />
<EmbeddedResource Include="inputs\19.txt" />
<EmbeddedResource Include="inputs\19a.txt" />
<EmbeddedResource Include="inputs\20.txt" />
<EmbeddedResource Include="inputs\20a.txt" />
<EmbeddedResource Include="inputs\20b.txt" />
<EmbeddedResource Include="inputs\21.txt" />
<EmbeddedResource Include="inputs\21a.txt" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="inputs\01b.txt" />
</ItemGroup>
</Project>