EduBrick

G. Рёбра конденсации

2000 мс · 256 МБ · всё или ничего

Конденсация — граф, вершины которого суть компоненты сильной связности исходного графа, а ребро между компонентами есть, если в исходном графе было хотя бы одно ребро из одной в другую.

Посчитайте количество рёбер в конденсации. Кратных рёбер и петель в ней нет: несколько рёбер между одной парой компонент считаются за одно, а рёбра внутри компоненты не считаются вовсе.

Конденсация всегда ациклична — иначе компоненты на цикле слились бы в одну. Это её главное свойство, и на нём стоят следующие две задачи.

Считать удобно множеством пар: перебрать все рёбра исходного графа, оставить те, у которых концы в разных компонентах, и посчитать различные пары номеров.

Формат ввода

Первая строка содержит числа nn (1≤n≤1041 \le n \le 10^4) и mm (0≤m≤1050 \le m \le 10^5).

Далее идут mm строк с рёбрами. Возможны кратные рёбра и петли.

Формат вывода

Одно число — количество рёбер в конденсации.

Примеры

ввод
4 4
2 1
3 2
2 3
4 3
вывод
2
ввод
2 4
1 2
1 2
1 2
2 1
вывод
0
Войдите, чтобы отправлять решения.