Половина#3905

Половина

2 секунди
256 мегабайтів
Середня

У доброзичливого Данила є декілька яблук. У силу своєї природної доброзичливості, кожного разу, коли він зустрічає когось зі своїх друзів, він дивиться на яблука, які у нього є, і віддає другу половину.

Але Данило не однаково любить усіх своїх друзів, тому деяким з них він віддає половину яблука, а деяким — половину наявних у нього яблук. При цьому з окоміром у Данила не все так добре, як зі щедрістю, і ділити яблука більше, ніж на дві частини, у нього не виходить. Тому, якщо він зустріне друга, а у нього нецілу кількість яблук, то він змушений віддати половину яблука.

Вранці у Данила було яблук, а за день Данило зустрів друзів. З'ясуйте, скільки яблук у нього могло залишитися увечері.

Вхідні дані

Вхідний файл містить два цілих числа: — кількість яблук у Данила та — кількість друзів, яких він зустрів за день (1 \leq n \leq 1000, 1 \leq k \leq 1000).

Вихідні дані

Перший рядок вихідного файлу повинен містити число — кількість варіантів відповіді на питання, скільки яблук може бути у Данила увечері. Наступний рядок повинен містити дійсних чисел, відсортованих за зростанням — варіанти відповідей.

Приклади

Приклад 1

Loading
Loading