10800. Доступність вершини
Відправити розв'язок
Бали:
100
Time limit:
1.0s
Memory limit:
500M
Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python
Орієнтований граф складається з \(n\) вершин і \(m\) ребер. Ребра пронумеровані \(1,2,…,n\).
Ваше завдання — відповісти на \(q\) запитів у формі "чи можете ви дістатися до вершини \(b\) з вершини \(a\)?"
Обмеження
- \( 1≤n≤5⋅10^4\)
- \(1≤m,q≤10^5\)
Формат вхідних даних
У першому рядку вхідних даних дано три цілі числа \(n\), \(m\) і \(q\): кількість вершин, ребер і запитів.
Далі іде \(m\) рядків, що описують ребра. Кожен рядок має два різних цілих числа \(a\) і \(b\): існує ребро від вершини \(a\) до вершини \(b\).
Нарешті іде \(q\) рядків, що описують запити. Кожен рядок складається з двох цілих чисел \(a\) і \(b\): "чи можете ви дістатися до вершини \(b\) з вершини \(a\)?"
Формат вихідних даних
Вивести відповідь на кожен запит: «YES» або «NO».
Приклад вхідних даних
4 4 3
1 2
2 3
3 1
4 3
1 3
1 4
4 1
Приклад вихідних даних
YES
NO
YES
Коментарі