Автор: | Завгороднев А.А. | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 256 Мб | |
Выходной файл: | Стандартный выход |
Вася играет в доминошки. Он расставил их на ребра так, чтобы когда опрокидываешь одну доминошку, она задевает другую, а та третью и так далее. То есть за одно опрокидывание можно цепной реакцией опрокинуть сразу много доминошек.
Также Вася дал следующее определение: доминошка называется «особенной», если при её опрокидывании цепной реацией получается так, что на эту же доминошку падает другая доминошка.
Помогите Васе определить сколько «особенных» доминошек есть в его расстановке.
В первой строке — целое число N (N ≤ 105).
Далее идут N строк, где в i-й строке сначала написано число Mi, после чего Mi целых чисел aij — номера доминошек, которые упадут, если упадет i-я доминошка. (Mi ≤ N, 1 ≤ aij ≤ N).
Гарантируется, что сумма по всем Mi не превосходит 2 ⋅ 105.
Выведите одно число — количество «особенных» доминошек.
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
2 |
|
|
3 |
|
|
Если переформулировать задание, то по сути надо найти все вершины, которые находятся в каком-либо цикле.
То есть вершина u является особенной, если существует вершина v ≠ u такая, что существую пути u ↦ v и v ↦ u.
А это прямое описание того, что вершина находится в сильной связности с вершиной v. И тогда для решения задачи достаточно найти все компоненты сильной связности.
Ответом будем сумма размеров компонент, в которых есть хотя бы 2 вершины.