https://leetcode.com/problems/island-perimeter/
1로 채워진 부분이 섬이고 섬에 둘레는 구하여라.
해당문제는 length 의 길이가 100 임으로 최대 100 x 100 크기의 배열이 입력으로 들어온다. DFS 를 통하여 1인 지역내에서 주변에 이어진 섬이 있는지 체크하여 count 변수를 체크 하였다.
class Solution {
public:
int islandPerimeter(vector<vector<int>>& grid) {
int count = 0;
int rows = grid.size();
int cols = grid[0].size();
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
if (grid[i][j] == 1)
{
count += 4;
if (i - 1 >= 0 && grid[i - 1][j]) count--;
if (i + 1 < rows && grid[i + 1][j]) count--;
if (j - 1 >= 0 && grid[i][j - 1]) count--;
if (j + 1 < cols && grid[i][j + 1]) count--;
}
}
}
return count;
}
};
2032. Two Out of Three (0) | 2021.10.10 |
---|---|
442. Find All Duplicates in an Array (0) | 2021.10.07 |
2028. Find Missing Observations (0) | 2021.10.03 |
2027. Minimum Moves to Convert String (0) | 2021.10.03 |
647. Palindromic Substrings (0) | 2021.09.12 |
댓글 영역