Esempio n. 1
0
        public static void Solve()
        {
            string inputPath = FileUtils.GetProjectFilePath("Days/Day15/ProblemA/input.txt");

            String[]         lines = File.ReadAllLines(inputPath);
            CombatSimulation sim   = new CombatSimulation(lines);

            sim.DoSimulation();
        }
Esempio n. 2
0
        public static void Solve()
        {
            string inputPath = FileUtils.GetProjectFilePath("Days/Day15/ProblemB/input.txt");

            String[] lines         = File.ReadAllLines(inputPath);
            int      startingPower = 3;

            for (int i = startingPower; i <= 1000; i++)
            {
                // TODO - This should be doing a binary search, but this problem has exhausted me :p
                CombatSimulation sim = new CombatSimulation(lines, i);
                var result           = sim.DoSimulation();
                Log.WriteLine("Completed simulation for attack power " + i + " Winner: " + result.Victor + " with alive elves " + result.ElfAliveCount + "/" + result.ElfParticipantCount);
                if (result.Victor == 'E' && result.ElfAliveCount == result.ElfParticipantCount)
                {
                    Log.WriteLine("Finished! - Final power was " + i);
                }
            }
        }