Трикутне число є числом , яке може бути виражено в вигляді суми послідовних позитивних цілих чисел, починаючи з 1. Крім того, вони можуть бути виражені з формулою n(n + 1) / 2, де nмає деяке позитивне ціле число.
Цифровий аналог числа обчислюється таким чином:
- Розділіть число на масив його цифр, наприклад
613 => [6 1 3] - Для кожного числа в масиві обчисліть число
nтрикутного числа;[6 1 3] => [21 1 6] - Підсумовуйте отриманий масив;
[21 1 6] => 28
Ваше завдання задається цілим числом n, багаторазово nобчислюйте цифровий кутовий аналог, поки результат не дорівнює 1, а потім виведіть усі обчислені значення. Ви можете виводити значення в будь-якому порядку та з необов'язковим включенням вихідного номера на початку масиву. Це гольф з кодом, тому найкоротший код виграє.
Тестові кейси
23 => 9 45 25 18 37 34 16 22 6 21 4 10 1
72 => 31 7 28 39 51 16 22 6 21 4 10 1
55 => 30 6 21 4 10 1
78 => 64 31 7 28 39 51 16 22 6 21 4 10 1
613 => 28 39 51 16 22 6 21 4 10 1
8392 => 90 45 25 18 37 34 16 22 6 21 4 10 1
11111 => 5 15 16 22 6 21 4 10 1
8592025 => 117 30 6 21 4 10 1
999999999 => 405 25 18 37 34 16 22 6 21 4 10 1
141і має nцифри. Значення максимального його digitangular аналог може мати це 45n, так digi-△(x) ≤ 45n < 45(1+log_10(x))і для x > 141нас є 45(1+log_10(x)) < x, отже , digi-△(x) ≤ x-1для x > 141, і як тільки ми переходимо до 141межі, ну, ми грубою силою довести з допомогою програм.