Задан ориентированный ациклический граф с \(n\) вершинами и \(m\) ребрами. Также задана перестановка вершин графа. Необходимо проверить, является ли данная перестановка топологической сортировкой.
В первой строке даны два числа \(n\) и \(m\) — количество вершин и ребер в графе соответственно (\(1 \leq n, m \leq 10^5\)). В следующих \(m\) строках заданы пары чисел \(u_i, v_i\), означающие, что в графе есть ребро из вершины \(u_i\) в вершину \(v_i\). В последней строке задана перестановка из \(n\) элементов.
Выведите "YES" (без кавычек), если данная перестановка является топологической сортировкой и "NO" в противном случае.
Примеры
№ | Входные данные | Выходные данные |
1
|
3 3 2 3 1 3 1 2 2 1 3
|
NO
|
2
|
3 3 3 2 1 2 3 1 3 1 2
|
YES
|