A idéia desse desafio é encontrar todas as palavras de um dicionário em uma grade de letras. Sua entrada deve vir de stdin ou da função arg e virá no seguinte formato:
[your dictionary as a list of space sep words]
[a grid of letters]
Example:
The cool car
looc
thea
jopr
Regras para encontrar uma correspondência
Uma correspondência é válida se for encontrada na diagonal, horizontal ou vertical no tabuleiro (sem distinção entre maiúsculas e minúsculas). A direção não importa (por exemplo, look
correspondências kool
). Se houver várias correspondências da mesma palavra, marque todas elas.
Saída:
Sua saída será a grade que você recebeu - com a pequena alteração de que as letras serão separadas por espaço e as linhas serão espaçadas duas vezes. Exemplo:
Input:
looc
thea
jopr
Output:
l o o c
t h e a
j o p r
Para representar uma correspondência, você colocará uma seta entre as letras que vão juntas. As setas ( /\-|X
) apontam para cada par de letras agrupadas em uma correspondência. X
é usado se /\
cruzar.
Exemplos:
Input:
The cool car
looc
thea
jopr
Output:
l-o-o-c
|
t-h-e a
|
j o p r
Input:
Atomic chess is cool
achess
btoikm
bloosi
nowmlp
hewiir
asdfec
Output:
a c-h-e-s-s
\ \ /
b t o i k m
\ \ \
b l o o s-i
\ \
n o w m l p
\
h e w i i r
\
a s d f e c
Input:
This is very neat words var are fun rob bot robot
wotsdsearn
siiewfvery
chheruoawd
tetoennore
asbdrgrehe
aobyedycab
tweosttgwt
Output:
w o t s d s e a r n
/
s-i i e w f v-e-r-y
/ | \
c h h e r u o a w d
/ / | X
t e t o e n n o r e
/ X \
a s b d r g r e h e
/ / \
a o b y e d y c a b
/ / \
t w e o s t t g w t
fonte
Pyth
ouCJam
resposta que será menos de 40 bytes ...Respostas:
JavaScript (ES6), 303
315Basicamente baseado nesta resposta
Editar 1
Nota: usando cadeias de modelos, há 3 novas linhas no código que são significativas e incluídas na contagem de bytes
Explicado (desatualizado)
TESTE
fonte
Javascript (ES6),
908901609603556552 bytesUngolfed:
Teste (deve funcionar com navegadores modernos com suporte para ES6):
Mostrar snippet de código
fonte
Python 3, 1387
Um "é" foi perdido no segundo exemplo
Sorta ungolfed
fonte
Mathematica, 478 bytes
Caso de teste:
fonte