The Island Perimeter solutions are below.
15 Jun 2024•Easy•C++ / Python / TypeScript
Island Perimeter
C++, Python and TypeScript solutions for Island Perimeter.
Solution files
Python•island-perimeter/synced-solution.py
def islandPerimeter(grid):
perimeter = 0
for i in range(len(grid)):
for j in range(len(grid[0])):
if grid[i][j] == 1:
perimeter += 4
if i > 0 and grid[i-1][j] == 1:
perimeter -= 2
if j > 0 and grid[i][j-1] == 1:
perimeter -= 2
return perimeter
C++•island-perimeter/synced-solution.cpp
class Solution {
public:
int islandPerimeter(vector<vector<int>>& grid) {
int perimeter = 0;
for (int i = 0; i < grid.size(); i++) {
for (int j = 0; j < grid[0].size(); j++) {
if (grid[i][j] == 1) {
perimeter += 4;
if (i > 0 && grid[i-1][j] == 1) {
perimeter -= 2;
}
if (j > 0 && grid[i][j-1] == 1) {
perimeter -= 2;
}
}
}
}
return perimeter;
}
};
TypeScript•island-perimeter/synced-solution.ts
function islandPerimeter(grid: number[][]): number {
let perimeter = 0;
for (let i = 0; i < grid.length; i++) {
for (let j = 0; j < grid[0].length; j++) {
if (grid[i][j] === 1) {
perimeter += 4;
if (i > 0 && grid[i-1][j] === 1) {
perimeter -= 2;
}
if (j > 0 && grid[i][j-1] === 1) {
perimeter -= 2;
}
}
}
}
return perimeter;
}