Numery powiernicze
Niech xbędzie liczbą całkowitą dowolnej podstawy, taką Djak tablica jego cyfr. xjest liczbą powierniczą, jeżeli dla wszystkich nmiędzy 1i na długości D:
D[n+1] = D[n] + D[n-1] + ... + D[1] + n
Weźmy na przykład liczbę 349z podstawy 10. Jeśli oznaczymy wskaźniki dla tego numeru, mamy następujące.
Index Digit
----- -----
1 3
2 4
3 9
Począwszy od pierwszej cyfry, mamy 1 + 3 = 4, co daje następną cyfrę. Następnie z drugą cyfrą mamy 3 + 4 + 2 = 9, co znowu daje następną cyfrę. Tak więc liczba ta jest liczbą zaufaną.
Biorąc pod uwagę liczbę całkowitą o podstawie między 1 a 62, oblicz wszystkie liczby ufające dla tej podstawy i wyślij ich listę, oddzieloną znakami nowej linii. Możesz założyć, że dla danej bazy istnieje skończona liczba liczb powierniczych.
Dla cyfr większych niż 9 użyj znaków alfanumerycznych A-Z, a dla cyfr większych niż Zużyj znaków alfanumerycznych a-z. Nie musisz się martwić o cyfry poza nimi z.
Nie muszą być wyprowadzane w określonej kolejności.
Przykładowe dane wejściowe:
16
Przykładowe dane wyjściowe:
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
12
23
34
45
56
67
78
89
9A
AB
BC
CD
DE
EF
125
237
349
45B
56D
67F
125B
237F
To jest kod golfowy, więc wygrywa najkrótszy kod. Powodzenia!
(Dzięki Zach za pomoc w formatowaniu i wskazanie kilku problemów.)
CDnie ma go na liście? Ponieważ wymienione są wszystkie inne kombinacje, w których druga cyfra jest o jedną więcej niż pierwsza cyfra, nie rozumiem, dlaczego CDsię nie kwalifikuje.