Spiegazione
La distanza di modifica tra due stringhe è una funzione del numero minimo possibile di inserzioni, eliminazioni o sostituzioni per convertire una parola in un'altra parola.
Gli inserimenti e le eliminazioni costano 1 e le sostituzioni costano 2.
Ad esempio, la distanza tra ABe Aè 1, poiché le eliminazioni costano 1 e l'unica modifica necessaria è l'eliminazione del Bpersonaggio.
La distanza tra CARe FARè 2, poiché le sostituzioni costano 2. Un altro modo di vedere questo è una cancellazione e un inserimento.
Regole
Date due stringhe di input (fornite tuttavia è conveniente nella tua lingua), il tuo programma deve trovare la distanza minima di modifica tra le due stringhe.
Si può presumere che le stringhe contengano solo i caratteri A-Ze abbiano meno di 100 caratteri e più di 0 caratteri.
Questo è il golf del codice , quindi vince la soluzione più breve.
Esempi di casi di test
ISLANDER, SLANDER
> 1
MART, KARMA
> 5
KITTEN, SITTING
> 5
INTENTION, EXECUTION
> 8
levenshteinfunzione integrata considera le sostituzioni come una modifica (sostituzione), non due (cancellazione + inserimento).