Ctrl K

Улица с одной короткой дорогой

Средняя
На улице стоят houses домов с номерами от 1 до houses. Соседние дома i и i + 1 соединены дорогой. Кроме того, есть ещё одна дорога — между домами a и b (номера могут совпадать, тогда эта дорога ничего не даёт). Расстояние между двумя домами — наименьшее число дорог, которые нужно пройти от одного до другого. Верните массив длины houses, в котором элемент с индексом k - 1 равен числу **упорядоченных** пар разных домов (p, q) на расстоянии ровно k. Пары (p, q) и (q, p) считаются по отдельности.
Пример 1
houses=4, a=1, b=4 → [8, 4, 0, 0]

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

Пример 2
houses=5, a=3, b=3 → [8, 6, 4, 2, 0]

Дорога из дома в него же ничего не меняет — это обычная улица из пяти домов.

Пример 3
houses=6, a=2, b=5 → [12, 12, 6, 0, 0, 0]
Ограничения
  • 2 ≤ houses ≤ 100
  • 1 ≤ a, b ≤ houses
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПорядок сборки модулей СредняяОчередь на курсы СредняяСкладываются ли связи в дерево СредняяЛучшие корни дерева СредняяСколько изолированных групп в сети Средняя
загружаем Python…
Вход
houses=4, a=1, b=4
Ожидается
[8, 4, 0, 0]

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