namespace TempleOfDoom { public class Program { static void Main(string[] args) { Queue tools = new Queue(Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray()); Stack substances = new Stack(Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray()); List challenges = new List(Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToList()); while (true) { int tool = tools.Peek(); int substance = substances.Peek(); if (challenges.Contains(tool*substance)) { challenges.Remove(tool * substance); tools.Dequeue(); substances.Pop(); if (challenges.Count == 0) { Console.WriteLine("Harry found an ostracon, which is dated to the 6th century BCE."); break; } } else { tools.Enqueue(tools.Dequeue() + 1); substances.Push(substances.Pop() - 1); if (substances.Peek() == 0) { substances.Pop(); } if (substances.Count == 0) { Console.WriteLine("Harry is lost in the temple. Oblivion awaits him."); break; } } } if (tools.Count != 0) { Console.WriteLine($"Tools: {string.Join(", ", tools)}"); } if (substances.Count != 0) { Console.WriteLine($"Substances: {string.Join(", ", substances)}"); } if (challenges.Count != 0) { Console.WriteLine($"Challenges: {string.Join(", ", challenges)}"); } } } }