Пример #1
0
        public static void part2()
        {
            string text             = Problem03.text();
            var    santa            = (0, 0);
            var    roboSanta        = (0, 0);
            var    visitedLocations = new HashSet <(int, int)>();

            visitedLocations.Add(santa);
            visitedLocations.Add(roboSanta);
            var isRoboSanta = false;

            foreach (var c in text)
            {
                if (isRoboSanta)
                {
                    roboSanta = move(roboSanta, c);
                    visitedLocations.Add(roboSanta);
                }
                else
                {
                    santa = move(santa, c);
                    visitedLocations.Add(santa);
                }
                isRoboSanta = !isRoboSanta;
            }

            Console.WriteLine(visitedLocations.Count);
        }
Пример #2
0
        public static void part1()
        {
            string text             = Problem03.text();
            var    currentLocation  = (0, 0);
            var    visitedLocations = new HashSet <(int, int)>();

            visitedLocations.Add(currentLocation);

            foreach (var c in text)
            {
                currentLocation = move(currentLocation, c);
                visitedLocations.Add(currentLocation);
            }

            Console.WriteLine(visitedLocations.Count);
        }