Пішаки#898

Пішаки

5 секунд
64 мегабайти
Середня

У першому класі Гліб сильно зацікавився шахами. Тоді він знав лише, як ходить пішак: він може бити по діагоналі вліво-вгору або вправо-вгору, а також рухатися на одну клітинку вгору, якщо ця клітинка порожня. Про те, що пішак може перетворитися на ферзя, Гліб не здогадувався, і вигадав власну версію шахів.

У цій грі використовується дошка з рядків і стовпчиків (1 \leq N \leq 100, 1 \leq M \leq 100) з такими правилами. На нижньому рядку, з номером , стоїть білих пішаків, інших білих фігур на дошці немає. Інші чорні фігури (назв яких Гліб не знає) розташовані десь ще на дошці. Пересуватися можуть тільки білі пішаки, і їхня мета — побити всі чорні фігури.

Як і в звичайних шахах, коли пішак б'є чорну фігуру, він переходить у відповідну клітинку, а з'їдена фігура знімається з дошки. Гліб виграє, якщо його пішаками вдасться побити всі чорні фігури; якщо ж ні — він програє. За початкового розташування всіх фігур визначте, чи зможе він перемогти і, якщо так, виведіть можливу послідовність ходів для білих пішаків.

Вхідні дані

У першому рядку вказано чотири цілі числа , , , (1 \leq N \leq 100, 1 \leq M \leq 100, 0 \leq P \leq M, 1 \leq K \leq 1000, K \leq (M-1)\cdot N). Далі йдуть різних чисел: номери стовпчиків p_j (1 \leq p_j \leq M), у яких розміщені білі пішаки. Після цього задані різних пар чисел: координати (рядок і стовпчик) чорних фігур r_i, c_i (2 \leq r_i \leq N, 1 \leq c_i \leq M).

Вихідні дані

Якщо пішаки не можуть побити всі фігури, виведіть одне слово NO.

Інакше виведіть у першому рядку YES. У другому рядку вкажіть загальну кількість ходів , а далі виведіть рядків з описом кожного ходу по одному у рядку. Кожен хід задається координатами , пішака (номери рядка і стовпчика), який робить хід, і символом , який може дорівнювати: L — взяти фігуру по діагоналі вліво-вгору, R — взяти фігуру по діагоналі вправо-вгору, або F — піти вперед. Кожен хід виводьте з одним пробілом між координатами і типом ходу.

Якщо існує кілька правильних послідовностей ходів, виведіть будь-яку. Мінімізувати кількість ходів не потрібно.

Приклади

Приклад 1

Loading
Loading