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

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


Перестановка длины \(n\) — это массив \(p=[p_1,p_2,\dots, p_n]\), в котором каждое целое число от \(1\) до \(n\) (включительно) встречается ровно один раз. Например, \(p=[4, 2, 6, 5, 3, 1]\) — перестановка \(6\).

Вам даны три целых числа \(n\), \(a\) и \(b\), где \(n\) — четное число. Выведите любую перестановку длины \(n\), в которой минимум среди всех элементов левой половины равен \(a\), и максимум среди всех элементов правой половины равен \(b\). Выведите -1, если такой перестановки не существует.

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

В первой строке задано одно целое число \(t\) (\(1 \le t \le 1000\)) — количество наборов входных данных. Следующие \(t\) строк содержат сами наборы входных данных.

Каждый набор входных данных — это три числа \(n\), \(a\), \(b\) (\(2 \le n \le 100\); \(1 \le a,b \le n\); \(a \ne b\)), где \(n\) — четное число (т.е. \(n \bmod 2 = 0\)).

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

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


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

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

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