当前位置:网站首页>One question per day 1020 Number of enclaves
One question per day 1020 Number of enclaves
2022-07-05 06:12:00 【A big pigeon】
topic :
Give you a size of m x n The binary matrix of grid , among 0 Represents an ocean cell 、1 Represents a land cell .
once Move It refers to walking from one land cell to another ( On 、 Next 、 Left 、 Right ) Land cells or across grid The boundary of the .
Return to grid unable Land that leaves the grid boundary in any number of movements ( enclave ) The number of cells .
Explain : use 2 Mark the land you can leave .
First mark the outermost land 2. And then from 2 set out , Depth first search the surrounding land is marked 2.
Last grid The unmarked land in is the enclave .
class Solution:
def numEnclaves(self, grid: List[List[int]]) -> int:
def dfs(i,j):
nonlocal grid,m,n
if i<0 or j<0 or i>=m or j >=n :
return
if grid[i][j]==1:
grid[i][j] = 2 # Departable land
dfs(i+1,j)
dfs(i-1,j)
dfs(i,j-1)
dfs(i,j+1)
return
m, n = len(grid), len(grid[0])
cnt = 0
for i in range(m):
grid[i][0] = 2 if grid[i][0] == 1 else 0
grid[i][n-1] = 2 if grid[i][n-1] == 1 else 0
for j in range(n):
grid[0][j] = 2 if grid[0][j] == 1 else 0
grid[m-1][j] = 2 if grid[m-1][j] == 1 else 0
for i in range(m):
for j in range(n):
if grid[i][j] == 2:
dfs(i+1,j)
dfs(i-1,j)
dfs(i,j-1)
dfs(i,j+1)
for i in range(m):
for j in range(n):
if grid[i][j] == 1:
cnt += 1
return cnt
边栏推荐
- JS quickly converts JSON data into URL parameters
- MIT-6874-Deep Learning in the Life Sciences Week 7
- 中职网络安全技能竞赛——广西区赛中间件渗透测试教程文章
- 1040 Longest Symmetric String
- Leetcode-1200: minimum absolute difference
- [rust notes] 16 input and output (Part 1)
- Open source storage is so popular, why do we insist on self-development?
- One question per day 2047 Number of valid words in the sentence
- 【Rust 笔记】15-字符串与文本(下)
- leetcode-6109:知道秘密的人数
猜你喜欢
leetcode-6108:解密消息
Dichotomy, discretization, etc
redis发布订阅命令行实现
1.15 - 输入输出系统
LeetCode 0108. Convert an ordered array into a binary search tree - the median of the array is the root, and the left and right of the median are the left and right subtrees respectively
Introduction to LVS [unfinished (semi-finished products)]
4. 对象映射 - Mapping.Mapster
可变电阻器概述——结构、工作和不同应用
R语言【数据集的导入导出】
Sqlmap tutorial (II) practical skills I
随机推荐
Analysis of backdoor vulnerability in remote code execution penetration test / / phpstudy of national game title of national secondary vocational network security B module
MIT-6874-Deep Learning in the Life Sciences Week 7
“磐云杯”中职网络安全技能大赛A模块新题
[jailhouse article] performance measurements for hypervisors on embedded ARM processors
剑指 Offer II 058:日程表
快速使用Amazon MemoryDB并构建你专属的Redis内存数据库
Some common problems in the assessment of network engineers: WLAN, BGP, switch
2022年贵州省职业院校技能大赛中职组网络安全赛项规程
leetcode-6108:解密消息
Control unit
Common optimization methods
QT判断界面当前点击的按钮和当前鼠标坐标
On the characteristics of technology entrepreneurs from Dijkstra's Turing Award speech
Daily question 1984 Minimum difference in student scores
LaMDA 不可能觉醒吗?
LeetCode 1200. Minimum absolute difference
MIT-6874-Deep Learning in the Life Sciences Week 7
[cloud native] record of feign custom configuration of microservices
LeetCode 0107.二叉树的层序遍历II - 另一种方法
Time of process