Максим и Лёша поехали на сборы в Петрозаводск. После тура они решили не ходить на дорешивание, а поиграть в шахматы. Игра проходит на бесконечной доске, и в какой-то момент у Максима осталось только две ладьи и король, а у Алексея — один король. А на бесконечной доске в такой ситуации победить затруднительно. Тогда Максим заменил своего короля на припасённую ещё одну ладью и ситуация изменилась.
Помогите Максиму поставить мат тремя ладьями на бесконечной доске.
Выходные данные
Для каждого хода выводите на стандартный поток вывода три числа — номер ладьи (1, 2 или 3) и перемещение ладьи lx, ly (|lx| + |ly| > 0;|lx|·|ly| = 0). Ход должен быть корректным, т. е. ладья не может пойти в занятую клетку, перепрыгнуть через другую фигуру. Перемещение ладьи не должно быть больше, чем на 1 000 клеток.
Примечание
Вывод должен завершаться переводом строки и сбросом буфера потока вывода. Для этого используйте flush(output) на языке Паскаль или Delphi, fflush(stdout) или cout.flush() в С/C++, sys.stdout.flush() на языке Python, System.out.flush() на языке Java.
Программа не должна делать более 40 ходов. Если после хода программы мат не поставлен, а король сделать ход не может, то считается, что тест не пройден.
Ладья может ходить на произвольное количество клеток по горизонтали или по вертикали. Король же может ходить в любую соседнюю клетку, которая не находится под боем ладьи, в том числе, он может «съесть» ладью, если клетка, в которой ладья стоит, не находится под боем другой ладьи. Обратите внимание, что в случае, если король съест ладью, то выигрыш станет невозможным, и тест не будет пройден.
Мат — ситуация в шахматах, когда король находится под ударом ладьи, а игрок не может сделать ни одного хода, чтобы его избежать. Пат — ситуация в шахматах, когда король не находится под ударом ладьи, но при этом игрок не может сделать ни одного хода.
Обратите внимание, что тестирующая система сообщает подробный протокол взаимодействия вашей программы и программы жюри. Гарантируется, что существует программа, которая на всех тестах жюри умеет ставить мат.
Пример ответа тестирующей системы для примера из условия.
Starting position: king on (2 0), rooks on (1 2) (0 4) (4 1)
Turn 1
Max moves 1st rook to (1 1)... OK.
Alex moved king to (3 0)
King on (3 0), rooks on (1 1) (0 4) (4 1)
Turn 2
Max moves 2nd rook to (3 4)... OK.
Alex moved king to (2 0)
King on (2 0), rooks on (1 1) (3 4) (4 1)
Turn 3
Max moves 3rd rook to (2 1)... OK.
It's nowhere for king to go :-(
Game over! Checkmate - Max wins!
Положение фигур по ходу игры.