Dies hat keinen praktischen Zweck, aber es könnte Spaß machen, Golf zu spielen.
Herausforderung
Bei einer gegebenen Zahl n ,
- Zählen Sie die Menge jeder Ziffer in n und addieren Sie 1 zu jeder Zählung
- Nehmen Sie die Primfaktorisierung von n
- Zählen Sie die Menge jeder Ziffer in der Primfaktorisierung von n , ohne doppelte Primzahlen einzuschließen
- Erstellen Sie eine neue Liste, indem Sie die jeweiligen Elemente der Listen aus den Schritten 1 und 3 miteinander multiplizieren
- Geben Sie die Summe dieser Liste zurück
Zum Beispiel hat 121 zwei 1
s und a 2
, so dass Sie die folgende Liste aus Schritt 1 erhalten würden:
0 1 2 3 4 5 6 7 8 9
1 3 2 1 1 1 1 1 1 1
Die Primfaktorisierung von 121 ist 11 2 , was die folgende Liste für Schritt 3 ergibt:
0 1 2 3 4 5 6 7 8 9
0 2 0 0 0 0 0 0 0 0
Beachten Sie, dass wir den Exponenten nicht gezählt haben. Diese multiplizieren sich, um Folgendes zu erhalten:
0 1 2 3 4 5 6 7 8 9
0 6 0 0 0 0 0 0 0 0
Und die Summe dieser Liste ist 6.
Testfälle
1 -> 0
2 -> 2
3 -> 2
4 -> 1
5 -> 2
10 -> 2
13 -> 4
121 -> 6
Anmerkungen
- Standardlücken sind verboten.
- Eingabe und Ausgabe können in jedem vernünftigen Format erfolgen.
- Sie sollten Einsen (oder Nullen für Schritt 3) in der Liste für Ziffern belassen, die nicht in der Nummer enthalten sind.
- Dies ist Code-Golf , also gewinnt die kürzeste Lösung in Bytes.
232792560
-> [2,1,4,2,1,2,2,2,1,2]
(Schritt 1); 2*2*2*2*3*3*5*7*14*17*19
(Schritt 2); so [0,5,1,2,0,1,0,2,0,1]
(Schritt 3); dann [0,5,4,4,0,2,0,4,0,2]
(Schritt 4); und sollte daher ausgeben 21
.