namespace AdventOfCodeLibrary._2022 { using AdventOfCodeLibrary.Shared; public class Day03Part2 : Answerable { public override int Year { get; set; } = 2022; public override int Day { get; set; } = 3; public override int Part { get; set; } = 2; public override string GetAnswer(byte[] data) { string[] rucksackData = GetAsStringArray(data); int priorityCount = 0; // go throu each ruchsack for (int index = 0; index < rucksackData.Length; index += 3) { // get the 3 ruchsacks string[] ruchsacks = rucksackData.Skip(index).Take(3).ToArray(); char prioChar = ruchsacks[0].Where(x => ruchsacks[1].Contains(x) && ruchsacks[2].Contains(x)).First(); priorityCount += prioChar > 'Z' ? (prioChar - 'a' + 1) : (prioChar - 'A' + 27); } return priorityCount.ToString(); } } }