Pengantar
Beberapa dari Anda mungkin telah menyadari bahwa saya adalah tipper ceroboh ketika menggunakan ponsel saya. Itu sebabnya saya ingin Anda menulis sebuah program yang mengoreksi kesalahan ketik saya.
Chalkrnge
Diberi kata yang salah eja, tampilkan semua kata yang mungkin ingin saya tulis.
Salah ketik
Penyebab utama kesalahan ketik saya adalah fakta bahwa saya menekan tombol yang salah dan sering menekan tombol di sebelah. Berikut ini adalah tata letak keyboard saya:
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 ] .
Perhatikan bahwa baris bawah, , [ space ] .
tidak akan pernah digunakan dalam tantangan ini
Untuk beberapa alasan, saya hanya membuat kesalahan secara horizontal: Saya tidak akan pernah menekan n sebagai ganti j , tetapi saya mungkin menekan f bukan d .
Misalnya, saya bisa mengeja kata dengan ceroboh sebagai:
akioot
Di mana saya telah pergi dari setiap tombol.
Namun, jangan lupa bahwa saya mungkin tidak selalu membuat kesalahan pada setiap huruf dalam kata.
Ezsmple
Katakanlah inputnya adalah:
vid
Kemungkinan kata itu bisa adalah:
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
Dari semua itu, berikut ini ada di kamus:
cod
cud
bid
bud
bus
Jadi itu harus menjadi output Anda.
Rulws
Anda hanya harus menggunakan file teks yang ditemukan di sini sebagai kamus Anda: http://mieliestronk.com/corncob_lowercase.txt . Anda tidak harus menghitung file ini sebagai bagian dari jumlah byte Anda.
Semua input akan menjadi satu kata. Anda dapat menampilkan output dengan cara apa pun yang Anda inginkan (selama ada semacam pemisah).
Asumsikan bahwa dengan semua input, Anda akan menemukan varian yang ada di kamus.
Wibninf
Kode terpendek dalam byte menang.
""
?Jawaban:
Japt,
5047 byteInput adalah kata untuk diperbaiki, dan kamus sebagai string. Uji secara online! (Catatan: Anda harus menempelkan kamus secara manual ke dalam string.)
Bagaimana itu bekerja
sumber
Python 2.7,
161159 byteversi yang mudah dibaca
sumber
.strip() for
.