Menu
CoddyTech

Word Search

Sana, harflerden oluşan bir ızgara olan board veriliyor; bu, board[r][c] değerinin r satırındaki, c sütunundaki harf olduğu bir dizge listesi ve bir word dizgesidir.

Izgarada word dizgesini izleyebiliyorsan true döndür: herhangi bir hücreden başla ve her adımda mevcut hücrenin doğrudan üstündeki, altındaki, solundaki veya sağındaki hücreye geç; böylece ziyaret ettiğin hücreler sırayla word dizgesini oluşturur. Bir izleme aynı hücreyi iki kez kullanamaz. Aksi takdirde false döndür. Harfler büyük/küçük harfe duyarlıdır; dolayısıyla a ile A farklıdır.

Fonksiyon

exist(board: string-array, word: string) → boolean
boardstring-array
ızgara, her satırda bir harf dizisi
wordstring
iz sürmek için kullanılan sözcük
Döndürürboolean
kelimenin, her biri en fazla bir kez kullanılan yan yana hücreler üzerinden izlenip izlenemeyeceği

Kısıtlar

  • 1 ≤ board.length ≤ 6
  • 1 ≤ board[i].length ≤ 6 ve tüm satırlar aynı uzunluktadır.
  • 1 ≤ word.length ≤ 20
  • board ve word yalnızca büyük ve küçük İngilizce harfler içerir.

Örnekler

Girdi
board = ["STAR", "POOL", "ENDS"]word = "STOOLS"
Çıktı
true
Açıklama
0. satır, 0. sütundaki S harfinden başlayın, ardından sağa giderek T harfine, aşağı inerek O harfine, sağa giderek ikinci O harfine, sağa giderek L harfine ve aşağı inerek 2. satır, 3. sütundaki S harfine ulaşın. Bu, her biri bir öncekine bitişik olan altı farklı hücredir.

lock iconGönderirken +23 gizli test

challenge icon

Ek soru

Evet ya da hayır demek yerine, tahtada word sözcüğünün kaç farklı izinin bulunduğunu sayabilir misin?

Kodu sıfırla
def exist(board, word):
    # Kodu buraya yazın
Test durumları

Durum 1

Durum 2

Durum 3

Girdi

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

Beklenen

true