На съезд лауреатов конкурсов Киноакадемии приглашены \(n\) кинозвёзд, которые очень трепетно относятся к различным слухам о себе. Необходимо, чтобы среди \(\frac{n(n-1)}{2}\) возможных пар кинозвёзд оказалось ровно \(a\) пар, в которых обе кинозвезды ни в какой момент времени не будут присутствовать в зале съезда вместе, и ровно \(b\) пар, в которых одна из кинозвёзд будет присутствовать в зале только вместе с другой: войдет в зал позже нее, а выйдет раньше.
Чтобы обеспечить эти условия, на входе в зал поставили швейцара. В каждый момент времени он либо впускает одного человека в зал, либо выпускает одного человека из зала. Кинозвёздам, покинувшим зал, запрещено вновь туда возвращаться.
Требуется для каждого из \(q\) заданных съездов по \(n\), \(a\) и \(b\) определить подходящую последовательность входа и выхода кинозвёзд в зал.
Формат входных данных
Первая строка входного файла содержит целое число \(q\) — количество съездов. Каждая из последующих \(q\) строк содержит описание съезда: три целых числа \(n\), \(a\) и \(b\).
Формат выходных данных
Выходной файл должен содержать \(q\) строк — по одной на каждый съезд. Каждая строка должна содержать число \(n\), после которого следуют \(2n\) целых чисел, описывающих порядок входа и выхода кинозвёзд в зал. Каждое число в диапазоне от \(1\) до \(n\) должно встречаться дважды: в первый раз число \(i\) обозначает вход \(i\)-й кинозвёзды в зал, во второй раз — её выход.
Гарантируется, что для каждого из заданных съездов существует хотя бы одно решение. Если существует несколько решений, можно вывести любое из них.
Если решение для конкретного съезда вами не найдено, в соответствующей строке необходимо вывести единственное число \(0\).
Требуется решить задачу для 7 тестов, которые находятся на вашем компьютере в каталоге <<c:work6-tests
>> в файлах с именами 01
, 02
, 03
, 04
, 05
, 06
и 07
. На проверку требуется сдавать только файлы с ответами. Сдавать программу не требуется.
За каждый тест, ответ на который отправляется в проверяющую систему, начисляется \(k\) баллов, где \(k\) — число съездов, для которых было найдено правильное решение.
Если присланный файл не соответствует требованиям к формату выходных данных, то он не будет принят на окончательную проверку с сообщением <<PE 1
>>.
В течение тура можно не более 10 раз по каждому тесту запросить информацию о результатах оценивания ответа. Запрос по каждому тесту можно делать не чаще одного раза в 5 минут. В качестве результата проверки сообщается количество полученных баллов и комментарий проверяющей программы, который содержит информацию о правильности решений для съездов в порядке их перечисления во входном файле в следующем формате:
-
<<+
>> — решение правильное, за него начислен 1 балл;
-
<<-
>> — решение неправильное;
-
<<0
>> — присланный файл содержит 0 для этого съезда.
В приведённом в примере ответе на тест, решение для второго съезда не найдено, а решение для четвертого теста неправильное. Если бы это был один из тестов жюри, такой ответ был бы оценен в 2 балла из 4.