Menu
CoddyTech

Word Search

Recibes una cuadrícula de letras board, una lista de cadenas donde board[r][c] es la letra de la fila r, columna c, y una cadena word.

Devuelve true si puedes trazar word: empieza en cualquier celda y avanza cada vez a la celda de arriba, de abajo, de la izquierda o de la derecha, de modo que las celdas que visites formen word en orden, sin usar nunca una celda dos veces. De lo contrario, devuelve false. Se distingue entre mayúsculas y minúsculas.

Función

exist(board: string-array, word: string) → boolean
boardstring-array
la cuadrícula, una cadena de letras por fila
wordstring
la palabra que hay que trazar
Devuelveboolean
si se puede rastrear la palabra a través de celdas contiguas, usando cada una como máximo una vez

Restricciones

  • 1 ≤ board.length ≤ 6
  • 1 ≤ board[i].length ≤ 6, y todas las filas tienen la misma longitud.
  • 1 ≤ word.length ≤ 20
  • board y word contienen solo letras inglesas, mayúsculas y minúsculas.

Ejemplos

Entrada
board = ["STAR", "POOL", "ENDS"]word = "STOOLS"
Salida
true
Explicación
Empieza en la S de la esquina superior izquierda, ve a la derecha hasta la T, baja hasta la O, ve a la derecha hasta la O y la L, y baja hasta la S que está debajo de la L. Ninguna celda se repite.
challenge icon

Para ir más allá

En lugar de responder sí o no, ¿puedes contar cuántos recorridos distintos de word contiene el tablero?

Restablecer código
def exist(board, word):
    # Escribe el código aquí

Prueba #1

Prueba #2

Prueba #3

Argumentos

board = ["STAR", "POOL", "ENDS"]
word = "STOOLS"

Salida Esperada

true