Introduciton
Alcuni di voi potrebbero aver capito che io sono un tifone sciatto quando uso il mio telefono. Ecco perché voglio che tu scriva un programma che corregga i miei errori di battitura.
Chalkrnge
Data una parola errata, produce tutte le possibili parole che intendevo scrivere.
Typso
La causa principale dei miei errori di battitura è dovuta al fatto che ho premuto le chiavi sbagliate e spesso ho colpito la chiave della porta accanto. Quello che segue è il mio layout di tastiera:
q w e r t y u i o p
a s d f g h j k l
z x c v b n m
, [ space ] .
Si noti che la riga inferiore , [ space ] .non verrà mai utilizzata in questa sfida
Per qualche ragione, faccio solo errori in orizzontale: non colpirei mai n invece di j , ma potrei colpire una f invece di una d .
Ad esempio, potrei finire per scrivere la parola sciatta come:
akioot
Dove sono andato a sinistra di ogni chiave.
Tuttavia, non dimenticare che potrei non fare necessariamente un errore su ogni lettera della parola.
Ezsmple
Diciamo che l'input è:
vid
Le possibilità che la parola avrebbe potuto essere sono:
vid cid bid
vis cis bis
vif cif bif
vod cod bod
vos cos bos
vof cof bof
vud cud bud
vus cus bus
vuf cuf buf
Di questi, i seguenti sono nel dizionario:
cod
cud
bid
bud
bus
Quindi dovrebbe essere il tuo risultato.
Rulws
Dovresti usare solo il file di testo trovato qui come dizionario: http://mieliestronk.com/corncob_lowercase.txt . Non è necessario contare questo file come parte del conteggio dei byte.
Tutti gli input saranno una sola parola. È possibile visualizzare l'output nel modo desiderato (purché sia presente un tipo di separatore).
Supponiamo che con tutti gli input, troverai una variante che si trova nel dizionario.
Wibninf
Vince il codice più breve in byte.
""?