Вызов
В этой задаче вам дадут целое число N (меньше 10 6 ), найдите минимальный способ суммирования в N, используя только числа Фибоначчи - это разбиение называется представлением Цекендорфа .
Вы можете использовать любое число Фибоначчи более одного раза, и если есть более одного представления, выведите любое.
Например, если входное значение равно 67, то одним из возможных выходных данных может быть использование чисел Фибоначчи 1,3,8,55, которое также является минимальным числом чисел Фибоначчи, которое можно использовать для получения суммы 67 .
Вход N указан в одной строке, входы заканчиваются EOF.
Примеры
Дано в формате input: output
0: 0
47: 34+13
3788: 2584+987+144+55+13+5
1646: 1597+34+13+2
25347: 17711+6765+610+233+21+5+2
677: 610+55+8+3+1
343: 233+89+21
3434: 2584+610+233+5+2
Ограничения
- Количество входов не должно превышать 10 6 значений.
- Ваша программа не должна запускаться более 5 секунд для всех входов.
- Вы можете использовать любой язык по вашему выбору.
- Самое короткое решение побеждает!