public static void Main(string[] args) { //var solver = new DepthFirstSearchSolver(NUM_ROPES, ROPE_BURN_TIME); var solver = new BreadthFirstSearchSolver(NUM_ROPES, ROPE_BURN_TIME); var allKnownTimesWithInstructions = solver.Solve(); var summary = FormatUtilities.GetSummary(allKnownTimesWithInstructions, NUM_ROPES, ROPE_BURN_TIME); Console.WriteLine(summary); Console.WriteLine(Environment.NewLine + "Press any key for detailed instructions..."); Console.ReadKey(); foreach (var knownTime in allKnownTimesWithInstructions) { var humanReadableInstructions = FormatUtilities.GetHumanReadableInstructions(knownTime.Key, knownTime.Value); foreach (var humanReadableInstruction in humanReadableInstructions) { Console.WriteLine(humanReadableInstruction); } Console.WriteLine(); } Console.WriteLine(Environment.NewLine + "Press any key to end..."); Console.ReadKey(); }