Задачі
Сильная связность
Сильная связность
Назвемо \textbf{компонентою сильної зв'язності} у орієнтовному графі довільну множину вершин таку, що з довільної вершини цієї множини існує шлях у довільну іншу вершину цієї множини, і не існує іншої множини з аналогічою властивістю, яка містить цю множину.
Задано орієнтовний граф. Зайдіть кількість різних компонент сильної зв'язності у ньому.
\InputFile
У першому рядку задані через пропуск два цілих числа $n$ і $m~(1 \le n \le 10, 0 \le m \le 90)$ --- кількість вершин і ребер у графі відповідно. Наступні $m$ рядків описують ребра графа: $i$-ий з цих рядків містить два числа $u_i$ та $v_i~(1 \le u_i, v_i \le n)$ --- номери початку і кінця $i$-го ребра, відповідно. Гарантується, що граф не містить петель та кратних ребер.
\OutputFile
Виведіть одне число --- кількість компонент сильної зв'язності заданого графа.
\includegraphics{https://static.e-olymp.com/content/6d/6d35215b8602960135be10b0b5af1e116fcc5452.gif}
Вхідні дані #1
3 2 1 2 2 3
Вихідні дані #1
3
Вхідні дані #2
5 4 3 1 1 2 2 3 4 5
Вихідні дані #2
3