Track
/
Julia
Julia
/
Esercizi
/
Alfametica
Alfametica

Alfametica

Difficile

Istruzioni

Dato un puzzle di alphametics, trova la soluzione corretta.

L'Alphametics è un puzzle in cui le lettere delle parole vengono sostituite con dei numeri.

Per esempio, SEND + MORE = MONEY:

  S E N D
  M O R E +
-----------
M O N E Y

Sostituendo queste lettere con dei numeri validi si ottiene:

  9 5 6 7
  1 0 8 5 +
-----------
1 0 6 5 2

Il risultato è corretto perché ogni lettera è sostituita da un numero diverso e le parole, tradotte in numeri, formano una somma valida.

Ogni lettera deve rappresentare una cifra diversa, e la cifra iniziale di un numero con più cifre non può essere zero.

Implementazione

Note

Potresti voler chiamare (o forse no!) la funzione permutations(a, t) da Combinatorics.jl nella soluzione.

  • Se lavori nell'editor online, puoi chiamare permutations(a ,t) liberamente, dato che è già nel namespace. Puoi vedere il codice sorgente nella scheda permutations.jl.
  • Se lavori in locale, aggiungi include("permutations.jl") in cima al file della soluzione per accedere a una versione di permutations(a, t) che si trova lì.
Caution

Se usi Combinatorics.jl v1.0.3 in locale, permutations(a, t) è molto lenta sui test di grandi dimensioni. Usa il file fornito permutations.jl, aggiorna a Combinatorics.jl v≥1.1.0 oppure esegui il «downgrade» a v1.0.2.

Modifica tramite GitHub Il link si apre in una nuova finestra o scheda
Julia Exercism

Vuoi iniziare Alfametica?

Iscriviti a Exercism per imparare e padroneggiare Julia con 35 concetti128 esercizi e il mentoring di persone reali, tutto gratis.