蓝桥杯训练16——扫雷

n,m=map(int,input().strip().split())

matrix = [list(map(int, input().split())) for _ in range(n)]

def count_bfs():

directions=[(0,1),(0,-1),(1,0),(-1,0),(1,1),(-1,1),(-1,-1),(1,-1)]

result=[[0]*m for _ in range(n)]

for i in range(n):

for j in range(m):

if matrix[i][j]==1:

result[i][j]=9

else:

count=0

for dx,dy in directions:

nx=dx+i

ny=dy+j

if 0<=nx<n and 0<=ny<m and matrix[nx][ny]==1:

count+=1

result[i][j]=count

return result

result=count_bfs()

for i in range(n):#循环遍历输出

for j in range(m):

print(result[i][j],end=' ')

print()

相关推荐
凯瑟琳.奥古斯特1 小时前
力扣2760 C++滑动窗口解法
数据结构·c++·算法·leetcode·职场和发展
_深海凉_2 小时前
LeetCode热题100-不同路径
算法·leetcode·职场和发展
handler013 小时前
速通蓝桥杯省一:二分算法
c语言·开发语言·c++·笔记·算法·职场和发展·蓝桥杯
悲伤小伞4 小时前
LeetCode 热题 100_4-283. 移动零
算法·leetcode·职场和发展
OYangxf5 小时前
力扣hot100【滑动窗口】
算法·leetcode·职场和发展
谙弆悕博士5 小时前
Fortran学习笔记
经验分享·笔记·学习·职场和发展·跳槽·学习方法·fortran
罗超驿6 小时前
3.快乐数专题学习笔记——双指针法在LeetCode 202题中的应用
java·算法·leetcode·职场和发展
_深海凉_6 小时前
LeetCode热题100-小于 n 的最大数(字节高频题)
算法·leetcode·职场和发展
逻辑驱动的ken6 小时前
Java高频面试考点场景题27
java·开发语言·面试·职场和发展·求职招聘
June bug6 小时前
【雅思】阅读填空题和判断题
职场和发展·学习方法