Inspiriert von digitalen Wurzeln, ist die faktorielle Primwurzel einer Zahl die Zahl, die entsteht, wenn Sie die Primfaktoren einer Zahl nehmen, sie addieren und den Vorgang mit der resultierenden Zahl wiederholen, bis Sie eine Primzahl erhalten ( die sich selbst als einzigen Hauptfaktor hat und somit ihre eigene faktorielle Hauptwurzel ist). Die Primfaktorwurzel von 4 ist 4, da 2 * 2 = 2 + 2, und dies ist die einzige Nicht-Primfaktor-Faktorwurzel einer ganzen Zahl größer als 1 (was ein weiterer Sonderfall ist, da sie keine Primfaktoren enthält). Die OEIS-Sequenz, die von den primären faktoralen Wurzeln gebildet wird, ist A029908 .
Die primäre faktorale Wurzel von 24 ist zum Beispiel:
24=2*2*2*3
2+2+2+3=9=3*3
3+3=6=2*3
2+3=5, and the only prime factor of 5 is 5. Therefore, the prime factoral root of 24 is 5.
Deine Aufgabe:
Schreiben Sie ein Programm oder eine Funktion, die die primäre faktorale Wurzel einer Eingabe-Ganzzahl findet.
Eingang:
Eine Ganzzahl, die mit einer vernünftigen Methode zwischen 2 und der größten Ganzzahl eingegeben wird, die Ihre Sprache unterstützt (einschließlich). Die Auswahl einer Sprache mit einer unangemessen niedrigen maximalen Ganzzahlgröße ist nicht zulässig (und verstößt auch gegen diese Standardlücke) ).
Ausgabe:
Eine Ganzzahl, die primäre faktorale Wurzel der Eingabe.
Testfälle:
4 -> 4
24 -> 5
11 -> 11
250 -> 17
Wertung:
Dies ist Code-Golf , die niedrigste Punktzahl in Bytes gewinnt!
4in den Testfällen hinzufügen , da dies eine Ausnahme darstellt und Sie es beim Testen einer Antwort leicht vergessen können?