eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Хитрый ниндзя

Хитрый ниндзя

В большом дворце есть зал, пол которого представляет собой \textbf{(2n-1)} х \textbf{(2n-1)} сетку из квадратов, расположенных в \textbf{2n-1} рядах (пронумерованных от \textbf{1} до \textbf{2n-1}) и \textbf{2n-1} колонках (пронумерованных от \textbf{1} до \textbf{2n-1}) - как приведено на рисунке ниже при \textbf{n} = \textbf{4}. Каждый квадрат на пересечении четной строки и четной колонки покрыт квадратной деревянной опорной колонной. Остальные клетки пустые. Таким образом между стенами и деревянными опорами в зале имеется \textbf{n} коридоров идущих слева направо и \textbf{n} коридоров от задней к передней части. В концах коридоров, идущих от задней к передней части, имеются дверные проемы, завешенные занавесками. В остальных случаях стены проемов не имеют. Зал охраняют \textbf{k} охранников. Каждый из этих охранников дислоцируется на пересечении вертикальных и горизонтальных коридоров. Каждый охранник смотрит \textbf{4} секунды налево, \textbf{4} секунды назад, \textbf{4} секунды направо и \textbf{4} секунды вперед, далее бесконечно повторяя описанный процесс. Направление наблюдения охранников не обязательно синхронизовано: в то время как некоторые смотрят влево, некоторые могут смотреть вперед. Ниндзя должен пересечь зал с передней части в заднюю, будучи не замеченным охранниками. Перед входом в зал ниндзя ожидает в ряду \textbf{0}, то есть за одной из занавесок в дверном проеме передней стены. Он может выбрать за какой из занавесок находиться и сколько времени ждать перед входом в зал. В качестве выхода ниндзя может выбрать любую дверь в задней стене. Ровно \textbf{2} секунды требуется ниндзя для перемещения между двумя соседними клетками - во время движения ниндзю могут видеть охранники, которые смотрят прямо на него. Может ли ниндзя успешно пересечь зал? Охранники могут видеть друг сквозь друга, но не через занавески. На рисунке \textbf{1} показано как ниндзя находит выход. Сначала ниндзя ожидает. Через \textbf{8 }секунд охранник в строке \textbf{5} колонке \textbf{1} поворачивается налево и ниндзя выходит из-за занавески. Через \textbf{10} секунд ниндзя прибывает в строку \textbf{1} колонку \textbf{1}. Через \textbf{12} секунд ниндзя прибывает в строку \textbf{2} колонку \textbf{1}. Ниндзя ждет пока охранник в строке \textbf{3} колонке \textbf{5} повернется назад в зале; тогда ниндзя начинает движение и исчезает за занавеской в колонке \textbf{3} как раз перед тем как охранник в строке \textbf{1} повернется лицом в его направлении. \includegraphics{https://static.e-olymp.com/content/1a/1a7aac6357fa9df6fbca6bdb31adf52cce941e87.jpg} \InputFile Первая строка содержит количество тестов. Каждый тест имеет следующий формат: \begin{itemize} \item первая строка содержит два числа: \textbf{n} (количество коридоров в каждом направлении, \textbf{1 }≤ \textbf{n }≤ \textbf{250}) и \textbf{k }(количество охранников, \textbf{0 }≤ \textbf{k }≤ \textbf{500}). \item \textbf{k} строк, по одной для каждого охранника: каждая строка содержит нечетное число \textbf{r }(\textbf{1 }≤ \textbf{r }≤ \textbf{2n-1}) и нечетное число \textbf{c }(\textbf{1 }≤ \textbf{c }≤ \textbf{2n-1}), а также одну из букв \textbf{L}, \textbf{B}, \textbf{R} или \textbf{F}. Первое число - номер строки, куда поставлен охранник; второе число - номер колонки охранника, буква указывает на направление в котором смотрит охранник в момент времени ноль (налево, назад, направо или вперед). \end{itemize} В каждой позиции зала может находиться не более одного охранника. \OutputFile Для каждого теста вывести в отдельной строке слово \textbf{succeeds}, или слово \textbf{fails}.
Ліміт часу 2 секунди
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
1
4 5
1 3 B
3 5 B
5 1 R
5 5 F
7 7 F
Вихідні дані #1
succeeds
Джерело 2011 Benelux Algorithm Programming Contest, Preliminaries, Задача H