Menu
CoddyTech

Word Search

Du erhältst ein Buchstabengitter board, dargestellt als Liste von Zeichenfolgen, wobei board[r][c] der Buchstabe in Zeile r, Spalte c ist, sowie eine Zeichenfolge word.

Gib true zurück, wenn du word im Gitter nachverfolgen kannst: Beginne in einer beliebigen Zelle und gehe bei jedem Schritt zu der Zelle direkt über, unter, links oder rechts von der aktuellen Zelle, sodass die besuchten Zellen word der Reihe nach ergeben. Eine Nachverfolgung darf dieselbe Zelle nicht zweimal verwenden. Andernfalls gib false zurück. Bei Buchstaben wird zwischen Groß- und Kleinschreibung unterschieden, daher sind a und A unterschiedlich.

Funktion

exist(board: string-array, word: string) → boolean
boardstring-array
das Raster, eine Buchstabenfolge pro Zeile
wordstring
das Wort zum Nachzeichnen
Gibt zurückboolean
ob sich ein Wort durch nebeneinanderliegende Zellen verfolgen lässt, wobei jede höchstens einmal verwendet wird

Einschränkungen

  • 1 ≤ board.length ≤ 6
  • 1 ≤ board[i].length ≤ 6, und jede Zeile hat dieselbe Länge.
  • 1 ≤ word.length ≤ 20
  • board und word enthalten nur englische Buchstaben, Groß- und Kleinbuchstaben.

Beispiele

Eingabe
board = ["STAR", "POOL", "ENDS"]word = "STOOLS"
Ausgabe
true
Erklärung
Beginne beim S in Zeile 0, Spalte 0, gehe dann nach rechts zu T, nach unten zu O, nach rechts zum zweiten O, nach rechts zu L und nach unten zum S in Zeile 2, Spalte 3. Das sind sechs verschiedene Zellen, von denen jede neben der vorherigen liegt.

lock icon+23 versteckte Tests beim Einreichen

challenge icon

Weiterführende Frage

Kannst du statt mit Ja oder Nein zu antworten zählen, wie viele verschiedene Wege für word es auf dem Brett gibt?

Code zurücksetzen
def exist(board, word):
    # Schreibe hier den Code
Testfälle

Fall 1

Fall 2

Fall 3

Eingabe

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

Erwartet

true