首页 > 其他 > 详细

LeetCode:463. Island Perimeter

时间:2017-02-06 13:03:26      阅读:162      评论:0      收藏:0      [点我收藏+]
 1 package Today;
 2 //LeetCode:463. Island Perimeter
 3 /*
 4  You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 represents water.
 5   Grid cells are connected horizontally/vertically (not diagonally).
 6    The grid is completely surrounded by water, and there is exactly one island 
 7    (i.e., one or more connected land cells). The island doesn‘t have "lakes" 
 8    (water inside that isn‘t connected to the water around the island). 
 9    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.
10 
11 Example:
12 
13 [[0,1,0,0],
14  [1,1,1,0],
15  [0,1,0,0],
16  [1,1,0,0]]
17 
18 Answer: 16
19 Explanation: The perimeter is the 16 yellow stripes in the image below:
20 
21  */
22 public class islandPerimeter463 {
23     public static int islandPerimeter(int[][] grid) {
24         int count=0;
25         for(int i=0;i<grid.length;i++){
26             for(int j=0;j<grid[i].length;j++){
27                 if(grid[i][j]==1){
28                     count+=4;
29                     if(j>0&&grid[i][j-1]==1)
30                         count--;
31                     if(j<grid[i].length-1&&grid[i][j+1]==1)
32                         count--;
33                     if(i>0&&grid[i-1][j]==1)
34                         count--;
35                     if(i<grid.length-1&&grid[i+1][j]==1)
36                         count--;
37                 }
38             }
39         }
40         return count;
41     }
42     //study 其实只要考虑右边和下面的情况就可以了,count=count-2;
43     
44     public static void main(String[] args) {
45         // TODO Auto-generated method stub
46         int[][] grid={{0,1,0,0},{1,1,1,0},{0,1,0,0},{1,1,0,0}};
47         System.out.println(islandPerimeter(grid));
48         
49     }
50 
51 }

 

LeetCode:463. Island Perimeter

原文:http://www.cnblogs.com/luluqiao/p/6369676.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!