【Leetcode-easy-463】Island Perimeter
来源:互联网 发布:淘宝全球购上传身份证 编辑:程序博客网 时间:2024/04/28 04:14
【Leetcode-easy-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:
思路
扩展边界
程序
class Solution { public int islandPerimeter(int[][] grid) { int[][] newGrid = new int[grid.length+2][grid[0].length+2]; int perimeter = 0; for (int i = 0; i < grid.length; i ++){ for (int j = 0; j < grid[0].length; j ++){ newGrid[i+1][j+1] = grid[i][j]; } } for (int i = 1; i < newGrid.length-1; i ++){ for (int j = 1; j < newGrid[0].length-1; j ++){ if (newGrid[i][j] == 1){ if (newGrid[i-1][j] == 0) perimeter ++; // 若1的上边是0,则周长加1 if (newGrid[i][j+1] == 0) perimeter ++; // 若1的右边是0,则周长加1 if (newGrid[i+1][j] == 0) perimeter ++; // 若1的下边是0,则周长加1 if (newGrid[i][j-1] == 0) perimeter ++; // 若1的左边是0,则周长加1 } } } return perimeter; }}
声明:题目来源于Leetcode。
- 【Leetcode-easy-463】Island Perimeter
- 【leetcode】【Easy】【463. Island Perimeter】
- Leetcode 463 Island Perimeter
- [leetcode 463]Island Perimeter
- [LeetCode-463]Island Perimeter
- Leetcode 463 Island Perimeter
- leetcode-463- Island Perimeter
- leetcode 463 Island Perimeter
- Leetcode #463 Island Perimeter
- leetcode#463 Island Perimeter
- 【LeetCode】463 Island Perimeter
- LeetCode.463 Island Perimeter
- 【LeetCode】463.Island Perimeter(easy)解题报告
- leetcode 463 Island Perimeter C++
- 歪门邪道 Leetcode 463 Island Perimeter
- 463.leetcode Island Perimeter(easy)[二维数组处理]
- LeetCode-Easy部分标签为HashTable 463. Island Perimeter
- LeetCode 463: Island Perimeter(岛屿周长)
- SDR用途简介
- Qt 文本文件的打开、新建、保存以及另存为
- Android 8.0 Oreo 推送通知的变化
- Android 支持库 v26 有哪些变化?
- sm框架-登录界面小结
- 【Leetcode-easy-463】Island Perimeter
- poj 3468 A Simple Problem with Integers
- MVC,MVP及MVVM
- “谜途”知返:从流水线式开发者到独立游戏人的暖心游戏
- 敲黑板,中秋节猜谜派奖时间到啦!
- python爬虫笔记day1 BS4库的使用
- 总结3
- “FCoE全解系列”之融合网络方案和典型组网
- Springboot实现filter拦截token验证和跨域