Files
cpp-flashcards/org/study_deck_02/dsa/graphs/0695-max-area-of-island.org
T

60 lines
1.4 KiB
Org Mode
Raw Normal View History

2026-06-01 18:12:40 +08:00
#+ANKI_DECK: study_deck_02
* TODO 0695. Max Area of Island :medium:
:PROPERTIES:
:NEETCODE: [[file:../../roadmap.org::*0695. Max Area of Island][0695. Max Area of Island]]
:END:
You are given an ~m x n~ binary matrix ~grid~. An island is a group of ~1~'s (representing land) connected *4-directionally* (horizontal or vertical.) You may assume all four edges of the grid are surrounded by water.
The *area* of an island is the number of cells with a value ~1~ in the island.
Return /the maximum *area* of an island in /~grid~. If there is no island, return ~0~.
*Example 1:*
#+begin_src
Input: grid = [[0,0,1,0,0,0,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,1,1,1,0,0,0],[0,1,1,0,1,0,0,0,0,0,0,0,0],[0,1,0,0,1,1,0,0,1,0,1,0,0],[0,1,0,0,1,1,0,0,1,1,1,0,0],[0,0,0,0,0,0,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,1,1,1,0,0,0],[0,0,0,0,0,0,0,1,1,0,0,0,0]]
Output: 6
Explanation: The answer is not 11, because the island must be connected 4-directionally.
#+end_src
*Example 2:*
#+begin_src
Input: grid = [[0,0,0,0,0,0,0,0]]
Output: 0
#+end_src
*Constraints:*
- ~m == grid.length~
- ~n == grid[i].length~
- ~1 <= m, n <= 50~
- ~grid[i][j]~ is either ~0~ or ~1~.
** TODO Approach
Write your approach here.
** TODO Python
#+begin_src python
class Solution:
def maxAreaOfIsland(self, grid: List[List[int]]) -> int:
#+end_src
** TODO C++
#+begin_src cpp
class Solution {
public:
int maxAreaOfIsland(vector<vector<int>>& grid) {
}
};
#+end_src