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

Задача . B. Отсутствующая сумма подпоследовательности


Даны два целых числа \(n\) и \(k\). Найдите последовательность \(a\) неотрицательных целых чисел размером не более \(25\), такую, что выполняются следующие условия.

  • Нет подпоследовательности \(a\) с суммой \(k\).
  • Для всех \(1 \le v \le n\), где \(v \ne k\), существует подпоследовательность \(a\) с суммой \(v\).

Последовательность \(b\) является подпоследовательностью \(a\), если \(b\) может быть получена из \(a\) путем удаления нескольких (возможно, нуля или всех) элементов, не изменяя порядок оставшихся элементов. Например, \([5, 2, 3]\) является подпоследовательностью \([1, 5, 7, 8, 2, 4, 3]\).

Можно показать, что при заданных ограничениях всегда существует решение.

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

Первая строка ввода содержит одно целое число \(t\) (\(1 \le t \le 1000\)) — количество тестов. Затем следует описание самих тестов.

Каждый тест состоит из одной строки, содержащей два целых числа \(n\) и \(k\) (\(2 \le n \le 10^6\), \(1 \le k \le n\)) — описанные выше параметры.

Гарантируется, что сумма \(n\) по всем тестам не превышает \(10^7\).

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

Первая строка вывода для каждого теста должна содержать одно целое число \(m\) (\(1 \le m \le 25\)) — размер выбранной вами последовательности.

Вторая строка вывода для каждого теста должна содержать \(m\) целых чисел \(a_i\) (\(0 \le a_i \le 10^9\)) — элементы вашей выбранной последовательности.

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

Примечание

В первом примере нам просто нужна подпоследовательность, дающая в сумме \(1\), но не дающая в сумме \(2\). Таким образом, массив \(a=[1]\) подходит.

Во втором примере все элементы больше \(k=1\), поэтому ни одна подпоследовательность не дает в сумме \(1\). Каждое другое целое число между \(1\) и \(n\) присутствует в массиве, поэтому существует подпоследовательность размера \(1\), дающая в сумме каждое из этих чисел.


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

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

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