12094. Пройти шлях
На двовимірній площині Степан спочатку знаходиться в точці (0,0), а його початкове здоров’я — \(H\). \(M\) предметів для відновлення здоров’я розміщено на площині; \(i\)-й з них розміщується в \((x_i ,y_i )\).
Степан зробить \(N\) ходів. \(І\)-й хід такий.
Нехай \((x,y)\) — його поточні координати. Він споживає здоров’я 1, щоб перейти до наступної точки, залежно від \(S_i\):
\((x+1,y)\), якщо \(S_i\) є \(R\);
\((x−1,y)\), якщо \(S_i\) є \(L\);
\((x,y+1)\), якщо \(S_i\) є \(U\);
\((x,y−1)\), якщо \(S_i\) дорівнює \(D\).
- Якщо стан здоров’я Степана став відʼємним, він падає і перестає рухатися. В іншому випадку, якщо предмет розміщено в точці, куди він переїхав, і його здоров’я строго менше \(K\), тоді він споживає предмет там, щоб зробити своє здоров’я \(K\).
Визначте, чи зможе Степан виконати \(N\) ходів і не впасти.
Обмеження
- \(1≤N,M,H,K≤2×10^5\)
- \(S\) – це рядок довжиною \(N\), що складається з \(R, L, U\) та \(D\).
- \(∣x_i ∣,∣y_i ∣≤2×10^5\)
- \((x_i ,y_i )\) є попарно різними.
- Усі значення у вхідних даних є цілими, крім \(S\).
Формат вхідних даних
Перший рядок містить цілі числа \(N,M,H,K\).
Наступний рядок містить \(S\).
Далі \(M\) рядків містять цілі числа \(x_i, y_i\).
Формат вихідних даних
У вихідний потік виведіть відповідь: Yes або No.
Приклад вхідних даних
4 2 3 1
RUDL
-1 -1
1 0
Приклад вихідних даних
Yes
Спочатку здоров'я Степана дорівнює 3. Ми описуємо ходи нижче.
- 1-й хід: \(S_i\) є \(R\), тому він рухається до точки (1,0). Його здоров'я знижується до 2. Хоча предмет знаходиться в точці (1,0), він не споживає його, оскільки його здоров'я не менше, ніж \(K=1\).
- 2-й хід: \(S_i\) є \(U\), тому він переходить до точки (1,1). Його здоров'я зменшується до 1.
- 3-й хід: \(S_i\) є \(D\), тому він переходить до точки (1,0). Його здоров’я зменшується до 0. Предмет розміщується в точці (1,0), а його здоров’я менше \(K=1\), тому він споживає предмет, щоб зробити своє здоров’я 1.
- 4-й хід: \(S_i\) дорівнює \(L\), тому він рухається до точки (0,0). Його здоров'я знижується до 0.
Таким чином, він може зробити 4 ходи, не впавши. Зверніть увагу, що здоров'я може досягати 0.
Приклад вхідних даних
5 2 1 5
LDRLD
0 0
-1 -1
Приклад вихідних даних
No
Коментарі