Ctrl K

Самый уединённый город

Средняя
В области n городов с номерами от 0 до n - 1. Они соединены двусторонними дорогами: roads[i] = [a, b, w] означает дорогу длиной w км между городами a и b. Расстояние между городами — длина кратчайшего пути по дорогам. Для каждого города посчитайте, сколько **других** городов находятся от него на расстоянии не больше max_distance. Верните город, у которого таких соседей меньше всего. Если таких городов несколько, верните тот, у которого номер больше.
Пример 1
n=3, roads=[[0, 1, 2], [1, 2, 2]], max_distance=3 → 2

Из города 1 в пределах 3 км доступны оба других, а из городов 0 и 2 — только город 1. Ничья между 0 и 2, выбираем больший номер — 2.

Пример 2
n=4, roads=[[0, 1, 1], [1, 2, 1], [2, 3, 5]], max_distance=2 → 3

До города 3 можно добраться только по дороге длиной 5, так что в пределах 2 км от него нет ни одного города.

Ограничения
  • 2 ≤ n ≤ 100
  • 1 ≤ len(roads) ≤ n·(n − 1)/2
  • roads[i] = [a, b, w], 0 ≤ a, b < n, a ≠ b
  • 1 ≤ w ≤ 10⁴
  • 1 ≤ max_distance ≤ 10⁴
  • Между любой парой городов не больше одной дороги
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиДешёвый перелёт с малым числом пересадок СредняяМаршруты всё ближе к складу СредняяСколько самых быстрых маршрутов СредняяДешёвый маршрут по башням СредняяПравила переписывания фраз Сложная
загружаем Python…
Вход
n=3, roads=[[0, 1, 2], [1, 2, 2]], max_distance=3
Ожидается
2

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