Esempio n. 1
0
        public long Solve2(IList <string> input)
        {
            var commands = input.Select(x => HandheldGameConsole.ParseCommand(x)).ToList();

            for (var i = 0; i < commands.Count; i++)
            {
                if (commands[i].instruction == "acc")
                {
                    continue;
                }

                var copy = commands.ToList();
                copy[i] = (SwitchOperation(commands[i].instruction), commands[i].number);

                var handheld  = new HandheldGameConsole(copy);
                var completed = handheld.Boot();

                if (completed)
                {
                    return(handheld.Accumulator);
                }
            }

            return(0);
        }
Esempio n. 2
0
        public long Solve1(IList <string> input)
        {
            var commands = input.Select(x => HandheldGameConsole.ParseCommand(x)).ToList();

            var handheld = new HandheldGameConsole(commands);

            handheld.Boot();

            return(handheld.Accumulator);
        }