在二維平面上,我們將石頭放置在一些整數座標點上。每個座標點上最多只能有一塊石頭。
現在,move 操作將會移除與網格上的某一塊石頭共享一列或一行的一塊石頭。
我們最多能執行多少次 move 操作?
示例 1:
輸入:stones = [[0,0],[0,1],[1,0],[1,2],[2,1],[2,2]]輸出:5示例 2:
輸入:stones = [[0,0],[0,2],[1,1],[2,0],[2,2]]輸出:3示例 3:
輸入:stones = [[0,0]]輸出:0
1 <= stones.length <= 1000
0 <= stones[i][j] < 10000
review:
腦海裡閃過union-find演算法,遍歷一遍陣列,每增加乙個點判斷其聯通性,最後輸出點的個數-組數就是可執行的move運算元
當然可以做一些優化
每次對**做優化也是一件比較鍛鍊能力的步驟
947 移除最多的同行或同列石頭
947.移除最多的同行或同列石頭 n塊石頭放置在二維平面中的一些整數座標點上。每個座標點上最多只能有一塊石頭。如果一塊石頭的同行或者同列上有其他石頭存在,那麼就可以移除這塊石頭。給你乙個長度為n的陣列stones,其中stones i xi,yi 表示第i塊石頭的位置,返回可以移除的石子的最大數量。...
947 移除最多的同行或同列石頭
題目描述 n 塊石頭放置在二維平面中的一些整數座標點上。每個座標點上最多只能有一塊石頭。如果一塊石頭的 同行或者同列 上有其他石頭存在,那麼就可以移除這塊石頭。給你乙個長度為 n 的陣列 stones 其中 stones i xi,yi 表示第 i 塊石頭的位置,返回 可以移除的石子 的最大數量。解...
947 移除最多的同行或同列石頭 並查集
n 塊石頭放置在二維平面中的一些整數座標點上。每個座標點上最多只能有一塊石頭。如果一塊石頭的 同行或者同列 上有其他石頭存在,那麼就可以移除這塊石頭。給你乙個長度為 n 的陣列 stones 其中 stones i xi,yi 表示第 i 塊石頭的位置,返回 可以移除的石子 的最大數量。示例 1 輸...