Add Day 12 Part 1

This commit is contained in:
Dimitrios Kaltzidis
2024-12-12 08:29:01 +02:00
parent d98019ff8b
commit b059e602f9

View File

@@ -65,27 +65,6 @@ int Part1(char[,] grid, int[][] directions)
return regions.Sum(region => Perimeter(region, neighbourDictionary) * region.Count); return regions.Sum(region => Perimeter(region, neighbourDictionary) * region.Count);
} }
int CountSplitSegments(List<(int, int, int, string)> lines)
{
if (lines.Count == 0) return 0;
var segmentCount = 1;
for (var i = 1; i < lines.Count; i++)
{
var prev = lines[i - 1];
var curr = lines[i];
var isContiguous =
(prev.Item1 == curr.Item1 && curr.Item2 - prev.Item2 == 1 && curr.Item3 == prev.Item3);
if (!isContiguous)
{
segmentCount++;
}
}
return segmentCount;
}
HashSet<(int, int)> GetRegion((int, int) point, Dictionary<(int, int), HashSet<(int, int)>> neighbourDict) HashSet<(int, int)> GetRegion((int, int) point, Dictionary<(int, int), HashSet<(int, int)>> neighbourDict)
{ {
var region = new HashSet<(int, int)>(); var region = new HashSet<(int, int)>();