protected override string Solve2(IEnumerable <string> inputs) { var orbits = inputs.Select(ParseOrbits); var orbitMap = new OrbitMap <string>(orbits); var result = orbitMap.CountOribitalTransfersRequired("SAN", "YOU"); var expectedAnswer = 454; if (result != expectedAnswer) { throw new InvalidOperationException($"Expected known correct answer '{expectedAnswer:N0}' but returned '{result:N0}'"); } return(result.ToString("N0")); }
protected override string Solve(IEnumerable <string> inputs) { var orbits = inputs.Select(ParseOrbits); var orbitMap = new OrbitMap <string>(orbits); int result = orbitMap.CountDirectAndIndirectOrbits(); var expectedAnswer = 227612; if (result != expectedAnswer) { throw new InvalidOperationException($"Expected known correct answer '{expectedAnswer:N0}' but returned '{result:N0}'"); } return(result.ToString("N0")); }