Liczba trójkątna to liczba, którą można wyrazić jako sumę kolejnych liczb całkowitych dodatnich, zaczynając od 1. Można je również wyrazić wzorem n(n + 1) / 2
, w którym n
jest pewna liczba całkowita dodatnia.
Liczbowy odpowiednik liczby jest obliczany w następujący sposób:
- Podziel liczbę na tablicę jej cyfr, np
613 => [6 1 3]
- Dla każdej liczby w tablicy oblicz
n
trzecią liczbę trójkątną;[6 1 3] => [21 1 6]
- Zsumuj wynikową tablicę;
[21 1 6] => 28
Twoim zadaniem jest, biorąc pod uwagę liczbę całkowitą n
, kilkakrotnie obliczyć n
cyfrowy odpowiednik, aż wynik będzie równy 1, a następnie wypisz wszystkie obliczone wartości. Możesz wyprowadzać wartości w dowolnej kolejności iz opcjonalnym dołączeniem oryginalnego numeru na początku tablicy. To jest golf golfowy, więc wygrywa najkrótszy kod.
Przypadki testowe
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
i zawiera n
cyfry. Wartość maksymalna jego digitangular odpowiednik może mieć to 45n
, więc digi-△(x) ≤ 45n < 45(1+log_10(x))
i dla x > 141
mamy 45(1+log_10(x)) < x
, a więc digi-△(x) ≤ x-1
za x > 141
, a raz mijamy 141
granicę, dobrze, my brute wymusić udowodnić poprzez programy.