Пример #1
0
    public int RunTestsAndGetResultPartOne()
    {
        RunTestsPartOne();
        var map = new OrbitalMap("OrbitalData.txt");

        return(map.totalOrbits);
    }
Пример #2
0
    public int RunTestsAndGetResultPartTwo()
    {
        RunTestsPartTwo();
        var map = new OrbitalMap("OrbitalData.txt");

        return(map.GetOrbitalTransfersBetween("YOU", "SAN"));
    }
Пример #3
0
    public void RunTestsPartOne()
    {
        var map = new OrbitalMap("OrbitalDataTestOne.txt");

        if (map.totalOrbits != 42)
        {
            throw new System.Exception(map.totalOrbits + " should  be 42");
        }
    }
Пример #4
0
        public string GetSolution()
        {
            string[] orbits = PuzzleHelper.ReadPuzzleDataFile("Day6Part1.txt");

            var orbitalMap = new OrbitalMap();

            orbitalMap.GenerateMap(orbits);

            return(orbitalMap.GetTotalOrbits().ToString());
        }
Пример #5
0
    public void RunTestsPartTwo()
    {
        var map     = new OrbitalMap("OrbitalDataTestTwo.txt");
        var minPath = map.GetOrbitalTransfersBetween("YOU", "SAN");

        if (minPath != 4)
        {
            throw new System.Exception(minPath + " should  be 4");
        }
    }
Пример #6
0
        public static void LogAnswerToConsole()
        {
            var input = Utilities.getInputStrings("day6.txt");
            var nodes = BuildTreeNodes(input);

            var startNode  = nodes.Where(x => x.Name == "YOU").FirstOrDefault();
            var targetNode = nodes.Where(x => x.Name == "SAN").FirstOrDefault();

            var map = new OrbitalMap(nodes);

            int distance = map.GetOrbitsBetweenTwoObjects(startNode, targetNode);

            int depth = map.GetTotalOrbits();

            Console.WriteLine(distance);
        }