Последовательность целых чисел является одной последовательностью, если разница между любыми двумя последовательными числами в этой последовательности равна -1 или 1, а ее первый элемент равен 0.
Точнее: a1, a2, ..., an является однопоследовательностью, если:
For any k (1 ≤ k < n): |a[k] - a[k+1]|=1,
a[1]=0
вход
n
- количество элементов в последовательностиs
- сумма элементов в последовательности
Выход
- набор из одной последовательности / list / array / etc длины
n
с суммой элементовs
, если это возможно - пустой набор / список / массив / и т.д., если это невозможно
Примеры
Для ввода 8 4
, вывода может быть [0 1 2 1 0 -1 0 1]
или [0 -1 0 1 0 1 2 1]
. Могут быть и другие возможности.
Для ввода 3 5
вывод пустой []
, так как это невозможно сделать.
правила
Это код гольфа, самый короткий ответ в байтах выигрывает. Материалы должны быть программой или функцией. Ввод / вывод может быть дан любым из стандартных способов .
(l-1)*l/2
и-(l-1)*l/2
имеют ту же четность, что и(l-1)*l/2
.