Leetcode 959 右斜槓劃分區域

2022-03-27 00:09:02 字數 1657 閱讀 8355

在由 1 x 1 方格組成的 n x n 網格 grid 中,每個 1 x 1 方塊由 /、\ 或空格構成。

這些字元會將方塊劃分為一些共邊的區域。

(請注意,反斜槓字元是轉義的,因此 \ 用 "\\" 表示。)。

返回區域的數目。

示例 1:

輸入:[

" /",

"/ "

]輸出:2

解釋:2x2 網格如下:

示例 2:

輸入:[

" /",

" "

]輸出:1

解釋:2x2 網格如下:

示例 3:

輸入:[

"\\/",

"/\\"

]輸出:4

解釋:(回想一下,因為 \ 字元是轉義的,所以 "\\/" 表示 \/,而 "/\\" 表示 /\。)

2x2 網格如下:

示例 4:

輸入:[

"/\\",

"\\/"

]輸出:5

解釋:(回想一下,因為 \ 字元是轉義的,所以 "/\\" 表示 /\,而 "\\/" 表示 \/。)

2x2 網格如下:

示例 5:

輸入:[

"//",

"/ "

]輸出:3

解釋:2x2 網格如下:

//單元格間合併

// 向右合併:1(當前)、3(右一列)

if (j + 1 < n)

//向下合併 2(當前) 0(下一列)

if (i + 1 < n) }}

return unionfind.getcount();

}}class unionfind

}private int find(int index)

return parent[index];

}void union(int x, int y)

parent[rooty] = rootx;

rank[rootx] += rank[rooty];

count--;

}int getcount()

}

leetcode 959 由斜槓劃分區域

目錄 一 題目內容 二 解題思路 三 在由 1 x 1 方格組成的 n x n 網格 grid 中,每個 1 x 1 方塊由 或空格構成。這些字元會將方塊劃分為一些共邊的區域。請注意,反斜槓字元是轉義的,因此 用 表示。返回區域的數目。示例 1 輸入 輸出 2 解釋 2x2 網格如下 示例 2 輸入...

LeetCode 959 由斜槓劃分區域

難度 中等。這個題,我不會,看別人的思路。參考 然後問題同 200.島嶼數量,遍歷0的區域。我的實現 class solution void change map int i,int j,int n public int regionsbyslashes vector grid else if gr...

leetCode 959 由斜槓劃分區域

這題的關鍵點就是如何將每個方格進行劃分,以及如何計算每個小方格的座標,然後根據每個方格的型別在方格內合併,然後再方格之間合併,最後返回連通分量的個數即可 class solution else if cur else if j 1 n if i 1 n return uf.getcount clas...