Iteriertes Querprodukt < Café VH < Internes < Vorhilfe
|
Hallo liebe Gemeinde,
wenn ich das Querprodukt einer Zahl bilde, erhalte ich eine neue Zahl, aus der ich nun wieder das Querprodukt bilde. Nach einer bestimmten Anzahl von Schritten komme ich auf eine einstellige Zahl.
Die Anzahl der Schritte wird als multiplikative Ziffernwurzel der Zahl bezeichnet. Öfters auch als Beharrlichkeit einer Zahl bezeichnet.
Ich soll nun einen schnellen Algorithmus entwickeln, der die kleinstmögliche Zahl findet, bei der man 11 Schritte benötigt. Das Ergebnis findet sich bei Wikipedia und ist 277777788888899 (iteratives Querprodukt).
Ich habe nun ein Programm geschrieben, welches alle Zahlen, beginnend bei 10 durchgeht und die Ziffernwurzel sucht. Dabei gibt es die Ziffernwurzel aus und die zugehörige kleinstmögliche Zahl.
Hier mal die Ausgabe, damit ihr wisst, um was es geht.
table init: 0.002 sec
1: 10 (0.004 sec)
2: 25 (0.004 sec)
3: 39 (0.004 sec)
4: 77 (0.004 sec)
5: 679 (0.004 sec)
6: 6788 (0.005 sec)
7: 68889 (0.01 sec)
8: 2677889 (0.056 sec)
9: 26888999 (0.435 sec)
10: 3778888999 (49.025 sec)
Ich schreibe die Querprodukte erst mal in eine Tabelle und fange dann an zu testen. Die kleinstmögliche Zahl mit der multiplikativen Ziffernwurzel 10 wird bei mir nach etwa 50 Sekunden gefunden. War schon ziemlich froh darüber, weil die Tabellenlösung gegenüber der Lösung ohne Tabelle etwa 3mal schneller ist.
Die kleinstmögliche Zahl mit der multiplikativen Ziffernwurzel 11 wird bei mir auch nach einigen Stunden nicht gefunden. Ist halt nicht so schnell, der I7-Prozessor.
Jetzt kommt also meine Frage:
Gibt es eine Methode, diese kleinstmöglichen Zahlen schneller zu finden?
Eine Optimierung habe ich schon eingebaut: Wenn eine Ziffer 0 ist, ist das Ergebnis 0 und ich brauche mit dem Querprodukt nicht mehr weiter zu machen.
Heute hat mir nämlich jemand gesagt, dass die multiplikative Ziffernwurzel 10 sich auf einem handelsüblichen Laptop bereits nach 3 Sekunden finden lässt und ich frage mich wie.
Viele Grüße und danke für die Hilfe
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:22 Fr 14.11.2014 | Autor: | tobit09 |
Hallo metasprecher und herzlich !
Diesen Artikel hast du nun noch einmal hier gepostet. Dort passt er thematisch auch besser hin.
Daher schlage ich vor, dass mögliche Antworten in dem anderen Thread erfolgen.
Viele Grüße
Tobias
|
|
|
|