题解 | 扫雷

扫雷

https://www.nowcoder.com/practice/d5f277427d9a4cd3ae60ea6c276dddfd

import sys

def solve():
    
    n, m = map(int, sys.stdin.readline().split())
    mat = [list(sys.stdin.readline().strip()) for _ in range(n)]
 
    d = [(-1, -1), (-1, 0), (-1, 1),
         (0, -1),           (0, 1),
         (1, -1), (1, 0), (1, 1)]

    for i in range(n):
        for j in range(m):
            if mat[i][j] == '*':
                print('*', end='')
            else:
                count = 0
                for dx, dy in d:
                    ni, nj = i + dx, j + dy
                    if 0 <= ni < n and 0 <= nj < m and mat[ni][nj] == '*':
                        count += 1
                print(count, end='')
        print()

solve()

全部评论

相关推荐

程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务