| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 6 초 | 1024 MB | 5 | 2 | 2 | 40.000% |
Наверное, многие видели в фильмах как люди используют для спиритических сеансов доску уиджа. Стоит только задать вопрос, и кто-нибудь с той стороны обязательно ответит, двигая указатель по буквам на доске вашими пальцами. Это достаточно опасная затея, но, к сожалению, не все подходят к ней достаточно серьезно.
В один не очень прекрасный вечер два друга нашли уиджа на чердаке, и решили с ней поиграть. Для этого они расчертили на ней клетчатое поле $n \times m$ и приклеили указатель к клетке на пересечении $x$-й строки и $y$-го столбца.
Затем друзья по очереди делали ходы. Каждый ход заключается в разрезании доски по горизонтали или по вертикали по границам клеток, после чего та часть, на которой приклеен указатель, остается в игре, а вторая половина выкидывается. Тот, кто не может сделать ход, то есть держит перед своим ходом доску размера 1ドル \times 1,ドル проигрывает.
Разумеется, духи с той стороны очень недовольны таким обращением с уиджа, поэтому проигравший отправится сразу на тот свет (хотя друзья пока что об этом не знают). Ваша задача --- определить, у кого из игроков, первого или второго, есть выигрышная стратегия, и продемонстрировать ее.
В единственной строке ввода через пробел перечислены 4ドル$ целых числа $n,ドル $m,ドル $x$ и $y$ --- размеры поля и координаты указателя (1ドル \leqslant x \leqslant n \leqslant 10^5$; 1ドル \leqslant y \leqslant m \leqslant 10^5$).
Это интерактивная задача.
В рамках взаимодействия с интерактором первым действием ваша программа должна вывести число <<1>> (без кавычек), если вы выбираете ходить первым, и <<2>>, если вторым.
После чего в соответствии с выбранной очередностью ваша программа и интерактор совершают ходы. Каждый ход описывается парой из символа <<R>> или <<C>>, обозначающего разрезание по горизонтали или по вертикали, соответственно, и числа $t,ドル обозначающего номер строки/столбца, после которой/которого делается разрез. Например, если размеры оставшейся доски равны 13ドル \times 17,ドル ход <<R 5>> означает, что доска разрезается по горизонтали на части размеров 5ドル \times 17$ и 8ドル \times 17$. Строки и столбцы нумеруются с единицы слева-направо и сверху-вниз, начиная от края оставшейся в игре части доски.
Если ваша программа выводит некорректный ход, интерактор выводит в ответ <<FAIL>> и завершается с вердиктом Wrong Answer. Считав слово <<FAIL>>, ваша программа должна также завершиться во избежание вердиктов Time Limit Exceeded и Idleness Limit Exceeded.
Если интерактор не может сделать ход, он выводит <<YOU WIN>> и завершается с вердиктом OK, после чего ваша программа также должна завершиться с нулевым кодом возврата. Обратите внимание, что интерактор не завершается, если после его хода у вашей программы не остается возможности походить --- чтобы в таком случае получить вердикт Wrong Answer, следует вывести произвольный некорректный ход и завершиться.
После каждой выведенной строки необходимо сбрасывать буфер потока вывода (sys.stdout.flush() в Python, System.out.flush() в Java, cout.flush() в C++).
3 3 2 2 R 1 R 1 YOU WIN
2 C 1 C 1
4 5 3 2 C 4 C 2 C 1 YOU WIN
1 R 3 C 1 R 1 R 1
Olympiad > Russian Olympiad in Informatics > Internet Olympiads in Informatics > 2022-2023 Season > November 12, 2022 > Advanced G번