Saturday, January 19, 2019
463. Island Perimeter
86.10 %
class Solution {
public int islandPerimeter(int[][] grid) {
// try to add 4 edges to each node
// if there are to node connect to each other, then 2 edges should be subtracted
int result = 0;
if (grid == null || grid.length == 0 || grid[0] == null || grid[0].length == 0) return 0;
for (int y = 0; y < grid.length; y++) {
for (int x = 0; x < grid[0].length; x++) {
if (grid[y][x] == 1) {
result += 4;
if (y + 1 < grid.length && grid[y + 1][x] == 1) {
result -= 2;
}
if (x + 1 < grid[0].length && grid[y][x + 1] == 1) {
result -= 2;
}
}
}
}
return result;
}
}
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment