Finde Palindromprodukte in einem gegebenen Bereich.
Eine Palindromzahl ist eine Zahl, die gleich bleibt, wenn man ihre Ziffern umdreht.
Zum Beispiel ist 121 eine Palindromzahl, aber 112 nicht.
Gegeben ist ein Zahlenbereich. Finde darin das größte und das kleinste Palindromprodukt, das Produkt zweier Zahlen aus diesem Bereich ist.
Deine Lösung soll das größte und das kleinste Palindromprodukt zurückgeben, zusammen mit den Faktoren des jeweiligen Produkts innerhalb des Bereichs. Wenn das größte oder das kleinste Palindromprodukt mehr als ein Faktorenpaar innerhalb des Bereichs hat, gib alle Paare zurück.
Gegeben ist der Bereich [1, 9] (jeweils einschließlich) ...
Und gegeben ist die Liste aller möglichen Produkte in diesem Bereich:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 16, 18, 15, 21, 24, 27, 20, 28, 32, 36, 25, 30, 35, 40, 45, 42, 48, 54, 49, 56, 63, 64, 72, 81]
Die Palindromprodukte sind (in diesem Fall) alle einstelligen Zahlen:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Das kleinste Palindromprodukt ist 1.
Seine Faktoren sind (1, 1).
Das größte Palindromprodukt ist 9.
Seine Faktoren sind (1, 9) und (3, 3).
Gegeben ist der Bereich [10, 99] (jeweils einschließlich) ...
Das kleinste Palindromprodukt ist 121.
Seine Faktoren sind (11, 11).
Das größte Palindromprodukt ist 9009.
Seine Faktoren sind (91, 99).
Naive Lösungen brauchen bei den Tests mit vierstelligen Faktoren möglicherweise sehr lange, wahrscheinlich länger als das Zeitlimit, das dem Online-Test-Runner zur Verfügung steht. Eventuell musst du die Übung lokal bearbeiten, um die Laufzeit deiner Lösung zu analysieren. Es gibt effiziente Lösungen für diese Übung, aber sie sind anspruchsvoll.
Melde dich bei Exercism an, um Elm mit 28 Konzepte110 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.