Diberikan daftar kata dan kisi-kisi huruf, temukan semua kata dalam kisi dan hapus semua huruf yang bukan bagian dari kata-kata itu. Kata-kata itu bisa maju, mundur, naik, turun atau diagonal. Anda dapat berasumsi bahwa tidak ada kata dalam daftar yang akan muncul di lebih dari satu tempat di grid.
Input akan selalu: daftar kata, 1 per baris, diikuti oleh baris kosong, diikuti oleh kisi-kisi huruf.
Contohnya
Memasukkan
ADA
ALGOL
ASSEMBLY
BASIC
COBOL
DELPHI
FORTRAN
JAVA
LABVIEW
LOGO
PASCAL
PERL
PHP
PYTHON
SMALLTALK
VISUALC
LLJKCABLFCI
OROLOBOCOIM
GELACSAPRSX
LPSTAHWVTAV
ANRLXLXQRBI
IHPLEDOXAHS
KJYAPHPYNOU
FABMADANZJA
EVISNOHTYPL
AAYLBMESSAC
WEIVBALOGOM
Keluaran
LL K FC
OR LOBOCOI
GELACSAPRS
LP T TAV
A L RBI
IHPLED A S
J APHP N U
A MADA A
V SNOHTYPL
AYLBMESSAC
WEIVBALOGO
Memasukkan
BACKSPACE
BOLD
CLOSE
COMPACTDISC
COPY
CPU
CURSOR
DELETE
DESKTOP
DVD
EDIT
ENTER
EXIT
FLOPPY
FONT
HARDWARE
INTERNET
KEYBOARD
MONITOR
MOUSE
PASSWORD
PASTE
RETURN
SAVE
SOFTWARE
START
TEXT
TOWER
WORDPROCESSING
IAUERAWTFOSICPN
DGZPFLOPPYARFLU
RSNOCURSORVZDBM
AMNIUOMRNHEGUIN
OTBNSRMONITORNT
BEYTTSGPJBOLDRT
YRQEAHEHARDWARE
EOGRRNECECLOSEP
KIONTYKTODTOWER
ELCENSUPERPDKNN
ATRTPRYKELPVIEJ
GIEANPOTKSEDUSL
NXCMPASSWORDRUC
TEDITAGVSWJCTOV
CWOYPGYQKNLVXMW
Keluaran
UERAWTFOS
DG PFLOPPYA
R NOCURSORV
A NI O E
OT NS MONITOR
B TTS P BOLD
Y EA EHARDWARE
E RRNECECLOSE
K NT KTO TOWER
E SUPER D
TRTPRY ELPVIE
IEANPOTKSED S
XC PASSWORDRUC
TEDITA O
P MW
Ini adalah kode-golf - kemenangan solusi terpendek.
Jawaban:
Ruby 1.9,
214210206182177173172166sumber
Perl - 230 karakter
Hitungan termasuk 4 untuk opsi baris perintah "-ln".
Tidak Disatukan:
sumber
.{$n}
Bagian regexp (bersama dengan/s
opsi) tidak membungkus diagonal untuk (dan lurus ke bawah) untuk menerapkan komponen ke bawah dari arah pertandingan. Apakah kekhawatiran Anda cocok palsu yang membungkus? AFAICT, ini tidak dapat memberikan kecocokan yang salah, karena baris baru dalam string. Misalkan huruf i dari sebuah kata cocok di kolom paling kanan, dan kami sedang memeriksa SE diagonal. The.{$n}
porsi melompat $ berikutnya W + 1 karakter, yang segera setelah \ n dan semua baris berikutnya. Huruf i +1 akan tidak cocok dengan \ n berikutnya, sehingga tidak ada kecocokan keseluruhan.JavaScript: 342 karakter
Versi Kode-Golf:
Versi yang diformat:
Konsep di balik solusi ini adalah untuk mengulangi semua posisi di papan tulis, menginisialisasi nilai-nilai array 2D ke '' untuk setiap posisi, dan kemudian mempertimbangkan semua arah kata yang potensial dan offset kata. Jika kata yang cocok ditemukan, nilai array untuk posisi itu diperbarui ke huruf yang benar. Akhirnya, array dikonversi menjadi string dan dikembalikan.
sumber
Scala
697, 666649degolfed:
sumber
stdin
alih-alihfromFile
. Saya tidak menentukan dari mana input berasal.