Задачі
Дороги
Дороги
В Україні, як відомо, багато проблем. Одна з них --- дороги. Новообраний президент України вирішив зайнятись будівництвом доріг. Його мета --- побудувати деяку додаткову кількість доріг між містами так, щоб можна було проїхати з довільного міста України у довільний (можливо, через інші міста, не обов'язково напряму). Звичайно, при цьому додаткових доріг повинно бути побудовано якомога менше.
Будемо вважати, що всі дороги в Україні двосторонні (і ті, що вже є, і ті, що будуть побудовані), тобто по ним можливий рух в обох напрямках. Врахуйте, що між двома містами може бути декількі доріг. Кріме того, можуть існувати дороги, які зв'язують місто саме з собою.
\InputFile
Перший рядок містить два натуральних числа $n$ та $m\:(1 \le n, m \le 10000)$ --- кількість міст і кількість вже існуючих доріг. Наступні $m$ рядків містять по два цілих числа $a_i$ и $b_i\:(1 \le a_i, b_i \le n)$ --- номери міст, які з'єднано вже існуючою дорогою.
\OutputFile
Вивести мінімальну кількість доріг, які потрібно побудувати, щоб існував шлях з довільного міста в довільне інше.
\includegraphics{https://static.e-olymp.com/content/7d/7db37796051b373cae229dbd30afbc78215ae345.gif}
Вхідні дані #1
7 5 1 3 2 3 3 2 2 4 6 7
Вихідні дані #1
2