Получив целое число n , разложите его на сумму максимальных треугольных чисел (где T m представляет m- ое треугольное число или сумму целых чисел от 1 до m ) следующим образом:
пока n> 0 ,
найти максимально возможное треугольное число T m такое, что T m ≤ n .
добавить m к представлению треугольной разложения n .
вычтите T m из n .
Например, ввод 44 даст выход 8311 , потому что:
1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 = 36 <44, но 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 = 45> 44.
- первая цифра 8 ; вычтите 36 из 44, чтобы получить 8 осталось.
1 + 2 + 3 = 6 <8, но 1 + 2 + 3 + 4 = 10> 8.
- вторая цифра - 3 ; вычтите 6 из 8, чтобы получить 2 осталось.
1 <2, но 1 + 2 = 3> 2.
- третья и четвертая цифры должны быть 1 и 1 .
Используйте цифры от 1 до 9 для представления первых 9 треугольных чисел, затем используйте буквы от a до z (можно использовать заглавные или строчные буквы) для представления от 10 до 35 треугольного числа. Вам никогда не дадут ввод, который потребует использования большей "цифры".
Границы на входе 1 ≤ n <666 , и это всегда будет целое число.
Все возможные входы и выходы , а также некоторые выбранные тестовые случаи (перечислены как вход, затем выход):
1 1
2 11
3 2
4 21
5 211
6 3
100 d32
230 k5211
435 t
665 z731
Выход ∞ для входа -1/12 не требуется. :)