Vertraute Zahlen
Sei x
eine ganze Zahl einer beliebigen Basis, also D
ein Array ihrer Ziffern. x
ist eine vertrauliche Zahl, wenn für alle n
zwischen 1
und die Länge von D
:
D[n+1] = D[n] + D[n-1] + ... + D[1] + n
Nehmen 349
wir zum Beispiel die Zahl in der Basis 10. Wenn wir die Indizes für diese Zahl beschriften, haben wir Folgendes.
Index Digit
----- -----
1 3
2 4
3 9
Ausgehend von der ersten Ziffer 1 + 3 = 4
ergibt sich die nächste Ziffer. Dann haben wir mit der zweiten Ziffer 3 + 4 + 2 = 9
die nächste Ziffer. Somit ist diese Nummer eine Vertrauensperson.
Berechnen Sie bei einer Ganzzahl mit einer Basis zwischen 1 und 62 alle Vertrauenspersonen für diese Basis und geben Sie eine durch Zeilenumbrüche getrennte Liste aus. Sie können davon ausgehen, dass es für eine bestimmte Basis eine begrenzte Anzahl von vertraulichen Zahlen gibt.
Verwenden Sie für Ziffern größer als 9 die Buchstaben A-Z
und für Ziffern größer als Z
die Buchstaben a-z
. Sie müssen sich keine Gedanken mehr über Ziffern machen z
.
Sie müssen nicht in einer bestimmten Reihenfolge ausgegeben werden.
Beispiel Input:
16
Beispielausgabe:
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
Dies ist Codegolf, also gewinnt der kürzeste Code. Viel Glück!
(Vielen Dank an Zach, der bei der Formatierung geholfen und auf einige Probleme hingewiesen hat.)
CD
nicht in der Liste? Da alle anderen Kombinationen, bei denen die zweite Ziffer eine mehr als die erste Ziffer ist, aufgelistet sind, verstehe ich nicht, warum CD
sie nicht qualifiziert sind.