D. N задач за K дней
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Поликарп хочет решить ровно $$$n$$$ задач, чтобы прокачать свое умение программировать перед важным соревнованием по программированию. Но это соревнование начнется очень скоро, более точно, оно начнется через $$$k$$$ дней. Это означает, что у Поликарпа есть ровно $$$k$$$ дней на тренировки!

Поликарп не хочет прокрастинировать, поэтому он хочет решать хотя бы по одной задаче в течение каждого из $$$k$$$ дней. Он также не хочет переутомляться, поэтому если он решает $$$x$$$ задач в течение какого-то дня, он должен решать не более, чем $$$2x$$$ задач в течение следующего дня. И, наконец, он хочет прокачивать свое умение программировать, поэтому если он решает $$$x$$$ задач в течение какого-либо дня, он должен решать хотя бы $$$x+1$$$ задачу в течение следующего дня.

Более формально: пусть $$$[a_1, a_2, \dots, a_k]$$$ — массив количеств решенных Поликарпом задач. $$$i$$$-й элемент этого массива равен количеству задач, которые Поликарп решает в течение $$$i$$$-го дня его тренировок. Тогда должны быть соблюдены следующие условия:

  • сумма всех $$$a_i$$$ для всех $$$i$$$ от $$$1$$$ до $$$k$$$ должна быть равна $$$n$$$;
  • $$$a_i$$$ должно быть больше нуля для всех $$$i$$$ от $$$1$$$ до $$$k$$$;
  • должно выполняться условие $$$a_i < a_{i + 1} \le 2 a_i$$$ для всех $$$i$$$ от $$$1$$$ до $$$k-1$$$.

Ваша задача — найти любой массив $$$a$$$ длины $$$k$$$, удовлетворяющий условиям выше, или сказать, что это невозможно сделать.

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

Первая строка входных данных содержит два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n \le 10^9, 1 \le k \le 10^5$$$) — количество задач, которые Поликарп хочет решить и количество дней, которые Поликарп хочет тренироваться.

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

Если невозможно найти никакой массив $$$a$$$ длины $$$k$$$, удовлетворяющий правилам тренировок Поликарпа, выведите «NO» в первой строке.

Иначе выведите «YES» в первой строке, затем выведите $$$k$$$ целых чисел $$$a_1, a_2, \dots, a_k$$$ во второй строке, где $$$a_i$$$ должно быть равно количеству задач, которые Поликарп должен решать в течение $$$i$$$-го дня. Если существует несколько возможных ответов, вы можете вывести любой из них.

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