zoukankan      html  css  js  c++  java
  • 463. Island Perimeter

    You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 represents water. Grid cells are connected horizontally/vertically (not diagonally). The grid is completely surrounded by water, and there is exactly one island (i.e., one or more connected land cells). The island doesn't have "lakes" (water inside that isn't connected to the water around the island). One cell is a square with side length 1. The grid is rectangular, width and height don't exceed 100. Determine the perimeter of the island.

    Example:

    [[0,1,0,0],
     [1,1,1,0],
     [0,1,0,0],
     [1,1,0,0]]
    
    Answer: 16
    Explanation: The perimeter is the 16 yellow stripes in the image below:
    

    大概意思就是求一个岛的周长

    思路如下,分四个边处理,例如左边的边只有在最左边或者左边没有岛的时候可以算成周长,其余同理

    public int islandPerimeter(int[][] grid) {
            int result = 0;
            for(int i=0;i<grid.length;i++)
            {
                for(int j=0;j<grid[0].length;j++)
                {
                    if(grid[i][j]==0)
                    {
                        continue;
                    }
                    else
                    {
                        if(j==0||grid[i][j-1]==0)
                        {
                            result++;
                        }
                        if(i==0||grid[i-1][j]==0)
                        {
                            result++;
                        }
                         if(j==grid[0].length-1||grid[i][j+1]==0)
                        {
                            result++;
                        }
                         if(i==grid.length-1||grid[i+1][j]==0)
                        {
                            result++;
                        }
                    }
                }
            }
            return result;
        }
  • 相关阅读:
    数据清洗
    JAVA多线程三种实现方式
    QT-4.8.6 编译配置过程
    qt 编译问题总结
    [转载]tslib1.4与Qt4.8.6的交叉编译与移植
    STC12C5A60S2 @ 22.0184Mhz 精确延时
    STC12C5A60S2 双串口通信
    C# Bitmap 复制
    TextMate2 最新版下载及源码编译过程
    mac系统 PHP Nginx环境变量修改
  • 原文地址:https://www.cnblogs.com/icysnow/p/8206611.html
Copyright © 2011-2022 走看看