n и k. Нужно выстроить числа от 1 до n (каждое ровно один раз) в последовательность, у которой модули разностей соседних элементов принимают ровно k разных значений.
Таких последовательностей обычно много, поэтому строим одну конкретную:
1. Первые k элементов берём попеременно из оставшихся чисел: сначала наименьшее, потом наибольшее, потом снова наименьшее и так далее.
2. Оставшиеся числа дописываем подряд, продолжая брать с той же стороны, что и k-й элемент: если он был наименьшим из оставшихся — по возрастанию, если наибольшим — по убыванию.
Верните полученную последовательность. Убедитесь, что разных разностей в ней действительно ровно k.n=6, k=3 → [1, 6, 2, 3, 4, 5]
По очереди: 1 (меньшее), 6 (большее), 2 (меньшее). Последним брали меньшее, так что дальше 3, 4, 5. Разности 5, 4, 1, 1, 1 — три разных значения.
n=5, k=2 → [1, 5, 4, 3, 2]
1, затем 5; последним брали большее, так что дальше 4, 3, 2. Разности 4, 1, 1, 1 — два разных значения.
n=4, k=1 → [1, 2, 3, 4]
k < n ≤ 10⁴n=6, k=3
[1, 6, 2, 3, 4, 5]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 74 теста на сервере, включая скрытые.