2022-03-27 20:46:41 +08:00
< p > You are given an < code > n x n< / code > binary matrix < code > grid< / code > . You are allowed to change < strong > at most one< / strong > < code > 0< / code > to be < code > 1< / code > .< / p >
< p > Return < em > the size of the largest < strong > island< / strong > in< / em > < code > grid< / code > < em > after applying this operation< / em > .< / p >
< p > An < strong > island< / strong > is a 4-directionally connected group of < code > 1< / code > s.< / p >
< p > < / p >
2023-12-09 18:42:21 +08:00
< p > < strong class = "example" > Example 1:< / strong > < / p >
2022-03-27 20:46:41 +08:00
< pre >
< strong > Input:< / strong > grid = [[1,0],[0,1]]
< strong > Output:< / strong > 3
< strong > Explanation:< / strong > Change one 0 to 1 and connect two 1s, then we get an island with area = 3.
< / pre >
2023-12-09 18:42:21 +08:00
< p > < strong class = "example" > Example 2:< / strong > < / p >
2022-03-27 20:46:41 +08:00
< pre >
< strong > Input:< / strong > grid = [[1,1],[1,0]]
< strong > Output:< / strong > 4
< strong > Explanation: < / strong > Change the 0 to 1 and make the island bigger, only one island with area = 4.< / pre >
2023-12-09 18:42:21 +08:00
< p > < strong class = "example" > Example 3:< / strong > < / p >
2022-03-27 20:46:41 +08:00
< pre >
< strong > Input:< / strong > grid = [[1,1],[1,1]]
< strong > Output:< / strong > 4
< strong > Explanation:< / strong > Can' t change any 0 to 1, only one island with area = 4.
< / pre >
< p > < / p >
< p > < strong > Constraints:< / strong > < / p >
< ul >
< li > < code > n == grid.length< / code > < / li >
< li > < code > n == grid[i].length< / code > < / li >
< li > < code > 1 < = n < = 500< / code > < / li >
< li > < code > grid[i][j]< / code > is either < code > 0< / code > or < code > 1< / code > .< / li >
< / ul >