Олимпиадный тренинг

Задача . B. Косия и перестановка


Задача

Темы: Конструктив *1000

У Реве есть два целых числа \(n\) и \(k\).

Пусть \(p\) — перестановка\(^\dagger\) длины \(n\). Пусть \(c\) — массив длины \(n - k + 1\) такой, что \(\)c_i = \max(p_i, \dots, p_{i+k-1}) + \min(p_i, \dots, p_{i+k-1}).\(\) Стоимостью перестановки \(p\) называется максимальное число в массиве \(c\).

Косия хочет, чтобы вы построили перестановку с минимальной возможной стоимостью.

\(^\dagger\) Перестановкой длины \(n\) является массив, состоящий из \(n\) различных целых чисел от \(1\) до \(n\) в произвольном порядке. Например, \([2,3,1,5,4]\) — перестановка, но \([1,2,2]\) не перестановка (\(2\) встречается в массиве дважды) и \([1,3,4]\) тоже не перестановка (\(n=3\), но в массиве встречается \(4\)).

Входные данные

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число \(t\) (\(1 \leq t \leq 2000\)) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка содержит два целых числа \(n\) и \(k\) (\(1 \leq k \leq n \leq 2 \cdot 10^5\)).

Гарантируется, что сумма значений \(n\) по всем наборам входных данных не превосходит \(2 \cdot 10^5\).

Выходные данные

Для каждого набора входных данных выведите \(n\) целых чисел \(p_1,p_2,\dots,p_n\), которые образуют перестановку с минимальной стоимостью.

Если существует более одной перестановки с минимальной стоимостью, выведите любую из них.

Примечание

Рассмотрим первый набор входных данных.

  • \(c_1 = \max(p_1,p_2,p_3) + \min(p_1,p_2,p_3) = 5 + 1 = 6\).
  • \(c_2 = \max(p_2,p_3,p_4) + \min(p_2,p_3,p_4) = 3 + 1 = 4\).
  • \(c_3 = \max(p_3,p_4,p_5) + \min(p_3,p_4,p_5) = 4 + 2 = 6\).

Поэтому стоимость равна \(\max(6,4,6)=6\). Можно показать, что это минимально возможная стоимость.


Примеры
Входные данныеВыходные данные
1 3
5 3
5 1
6 6
5 1 2 3 4
1 2 3 4 5
3 2 4 1 6 5

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя