Given an
Each word must be constructed from letters of sequentially adjacent cells, where adjacent cells are horizontally or vertically neighboring. The same letter cell may not be used more than once in a word.
Example 1:
Input: board = [["o","a","a","n"],["e","t","a","e"],["i","h","k","r"],["i","f","l","v"]], words = ["oath","pea","eat","rain"] Output: ["eat","oath"]
Example 2:
Input: board = [["a","b"],["c","d"]], words = ["abcb"] Output: []
Constraints:
m == board.length n == board[i].length 1 <= m, n <= 12 board[i][j] is a lowercase English letter.1 <= words.length <= 3 * 104 1 <= words[i].length <= 10 words[i] consists of lowercase English letters.- All the strings of
words are unique.
Solution
可以用同一套解法,但要注意的是,words 可能會有重複的字串
所以可以用 set 先避免重複並加速計算
kotlin
沒有留言:
張貼留言