Ctrl K

Отрезанные друг от друга города

Средняя
В стране n городов с номерами от 0 до n - 1. Двусторонние дороги заданы списком roads: roads[i] = [a, b] соединяет города a и b. Верните, сколько существует неупорядоченных пар разных городов, между которыми нельзя проехать ни по какой цепочке дорог.
Пример 1
n=5, roads=[[0, 3], [3, 4], [1, 2]] → 6

Получаются две группы: {0, 3, 4} и {1, 2}. Город из одной группы не доедет до города из другой: 3 · 2 = 6 пар.

Пример 2
n=4, roads=[] → 6

Дорог нет, все 4 · 3 / 2 = 6 пар городов отрезаны друг от друга.

Пример 3
n=3, roads=[[0, 1], [1, 2]] → 0
Ограничения
  • 1 ≤ n ≤ 10⁵
  • 0 ≤ len(roads) ≤ 2 · 10⁵
  • 0 ≤ a, b < n, a ≠ b
  • Каждая пара городов соединена не более чем одной дорогой
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСкладываются ли связи в дерево СредняяСколько изолированных групп в сети СредняяЦепочки отношений СредняяГруппы связанных серверов СредняяЛишний кабель Средняя
загружаем Python…
Вход
n=5, roads=[[0, 3], [3, 4], [1, 2]]
Ожидается
6

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 56 тестов на сервере, включая скрытые.