Биологи и информатики нашли очередной повод, чтобы совместно заказать несколько пицц в лицей.
Каждая пицца оказалась разделена на 8 кусков. Часть кусков были съедены сразу теми,
кто не опаздывает на занятия второй половины дня по информатике и биологии,
а оставшиеся N кусков будут поделены между двумя людьми, кто любит опаздывать.
Они по очереди могут брать куски, первым ходом можно взять от 1 до K кусков.
Затем игрок может взять любое количество кусков, но не более чем на 1 превышающее то количество,
которое взял игрок перед ним (можно взять меньше, столько же или на один больше, но обязательно
хотя бы один кусок нужно взять).
Например, если N=10, K=5, то первым ходом первый может взять 1, 2, 3, 4 или 5 кусков, если он, например,
возьмет 3, то следующим ходом второй может взять 1, 2, 3 или 4, и если второй возьмет 1, то первый затем
может взять 1 или 2, и т. д. Проигрывает тот, кто возьмет последний кусок.
Теперь начинающий хочет рассчитать, какое количество кусков он должен взять первым ходом, чтобы выиграть при любой игре второго. Помогите ему.
Исходные данные
На первой строке входного файла находятся числа N и K, разделенные пробелом (1 ≤ K ≤ N ≤ 200).
Результат
Выведите в выходной файл все такие X, отсортированные по возрастанию, что, взяв на первом ходу X кусков, первый выиграет.
Числа следует разделять пробелами. Если таких X не существует, выведите в выходной файл единственное число 0.
Пример
Исходные данные | Результат |
5 3
|
1
|
4 2
|
0
|
8 7
|
2 7
|
|