Python程式檢查單詞是否可以在矩陣字元板上找到


假設我們有一個矩陣字元板。其中每個單元格都包含一個字元。我們還有一個名為 target 的字串,我們必須檢查是否可以透過從左到右或從上到下單向的方式在矩陣中找到 target,或者找不到。

因此,如果輸入類似於

ants
spin
laps

Word = “tip”

則輸出將為 True,您可以看到第三列(從上到下)形成了“tip”。

為了解決這個問題,我們將遵循以下步驟:

  • 對於 board 中的每個 i,執行以下操作
    • i := 使用 i 中存在的字元建立單詞
    • 如果 i 中存在單詞,則
      • 返回 True
  • i := 0
  • 當 i < board 的行數時,執行以下操作
    • j := 使用 board 中第 i 列的字元建立字串
    • i := i + 1
    • 如果 j 中存在單詞,則
      • 返回 True
  • 返回 False

示例

讓我們檢視以下實現以獲得更好的理解:

def solve(board, word):
   for i in board:
      i = "".join(i)
      if word in i:
         return True
   i = 0
   while i < len(board):
      j = "".join([col[i] for col in board])
      i += 1
      if word in j:
         return True

   return False

board = [["a","n","t","s"],["s","p","i","n"],["l","a","p","s"]]
word = "tip"
print(solve(board, word))

輸入

[["a","n","t","s"],
["s","p","i","n"],
["l","a","p","s"]],
"tip"

輸出

True

更新時間: 2021年10月14日

451 次檢視

開啟您的 職業生涯

完成課程獲得認證

開始學習
廣告