Gegeben ist ein Alphametik-Rätsel. Finde die richtige Lösung.
Alphametik ist ein Rätsel, bei dem Buchstaben in Wörtern durch Zahlen ersetzt werden.
Zum Beispiel SEND + MORE = MONEY:
S E N D
M O R E +
-----------
M O N E Y
Setzt man gültige Zahlen ein, erhält man:
9 5 6 7
1 0 8 5 +
-----------
1 0 6 5 2
Das ist richtig, weil jeder Buchstabe durch eine andere Zahl ersetzt wird und die Wörter, in Zahlen übersetzt, eine gültige Summe ergeben.
Jeder Buchstabe muss eine andere Ziffer darstellen, und die führende Ziffer einer mehrstelligen Zahl darf nicht null sein.
Vielleicht möchtest du (oder auch nicht!) in deiner Lösung die Funktion permutations(a, t) aus Combinatorics.jl aufrufen.
permutations(a ,t) ohne Weiteres aufrufen, da es sich bereits im Namensraum befindet. Den Quellcode siehst du im Tab mit der Beschriftung permutations.jl.include("permutations.jl") am Anfang deiner Lösungsdatei hinzu, um auf eine dort liegende Version von permutations(a, t) zuzugreifen.Wenn du Combinatorics.jl v1.0.3 lokal verwendest, ist permutations(a, t) bei den großen Tests sehr langsam.
Verwende entweder die bereitgestellte Datei permutations.jl, aktualisiere auf Combinatorics.jl v≥1.1.0 oder „downgrade“ auf v1.0.2.
Melde dich bei Exercism an, um Julia mit 35 Konzepte128 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.