Məsələlər
Прямокутник та шляхи
Прямокутник та шляхи
У Степана через кілька хвилин побачення з Марисею, а він ніяк не може роз'язати наступну задачу:
Задано прямокутник розміру \textit{\textbf{A}} на \textit{\textbf{B}}, протилежні кути якого мають координати \textbf{(0,0)} та \textbf{(}\textit{\textbf{A,B}}\textbf{)}. У прямокутнику розташовано \textit{\textbf{N}} точок, пронумерованих від 1 до \textit{\textbf{N}}. Точка номер \textit{\textbf{i}} має координати \textbf{(}\textit{\textbf{X}}\textbf{\[}\textit{\textbf{i}}\textbf{\]}\textit{\textbf{,Y}}\textbf{\[}\textit{\textbf{i}}\textbf{\])}. Точки, координати яких можна записати як \textbf{(0,}\textit{\textbf{ y}}\textbf{)}, назвемо лівими. Аналогічно, точки вигляду \textbf{(}\textit{\textbf{A, y}}\textbf{)} назвемо правими. Деякі точки з’єднані відрізками, по яких можна рухатись від точки до точки. По відрізку можна рухатись або в обох напрямках, або тільки в одному, залежно від типу відрізка. Відрізки не мають спільних точок (перетинів, накладань), окрім кінців відрізків.
Підрахуйте для кожної точки з лівої сторони (нехай це точка \textit{\textbf{Q}}) кількість точок з правої сторони, таких що з них можна добратись до точки \textit{\textbf{Q}} по відрізках. Допоможіть йому!
\InputFile
В першому рядку задано 4 числа \textit{\textbf{N, M, A, B}} -- кількість точок, кількість відрізків, та розміри прямокутника \textbf{(1 ≤}\textit{\textbf{ N}}\textbf{ ≤ 300 000, 0 ≤ }\textit{\textbf{M}}\textbf{ ≤ 900 000, 1 ≤ }\textit{\textbf{A,B}}\textbf{ ≤ 10^9)}.
В наступних \textit{\textbf{N}} рядках задано цілі координати точок в прямокутнику. Жодні 2 точки не співпадають. Наступні \textit{\textbf{M}} рядків описують відрізки трійками \textit{\textbf{x, y, k }}\textbf{(1 ≤ }\textit{\textbf{k}}\textbf{ ≤ 2)}. Якщо \textit{\textbf{k}}\textbf{=1}, то по відрізку можна рухатись лише від точки \textit{\textbf{X}} до \textit{\textbf{Y}}. Якщо \textit{\textbf{k}}\textbf{=2}, то по даному відрізку можна рухатись в обох напрямках.
\OutputFile
Виведіть відповідь для кожної точки з лівої сторони. Впорядкуйте точки за спаданням \textit{\textbf{y}}-координати точок.
Giriş verilənləri #1
12 13 7 9 0 1 0 3 2 2 5 2 7 1 7 4 7 6 7 7 3 5 0 5 0 9 3 9 1 3 2 3 2 1 3 4 1 4 5 1 5 6 1 9 3 1 9 4 1 9 7 1 9 12 2 10 9 1 11 12 1 12 8 1 12 10 1
Çıxış verilənləri #1
4 4 0 2