星星亮度图
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
小杨用天文望远镜拍摄了一张 n 行 m 列的星空照片,照片中每个格子记录了一个亮度值(非负整数)。其中亮度值为 0 的格子表示没有星星,亮度值大于 0 的格子表示有一颗星星。
小杨想计算每个没有星星的格子周围 8 个方向上,最亮的那颗星星的亮度值是多少。如果该格子周围 8 个方向都没有星星,则输出 0。
我们定义两个格子相邻,当且仅当两个格子至少有一个公共顶点(即对于不在边缘的格子,周围 8 个格子均与其相邻)。
输入格式
第一行两个整数 n 和 m,表示星空照片的行数和列数。 接下来 n 行,每行 m 个整数,表示每个格子的亮度值。
输出格式
输出 n 行,每行 m 个数字(用空格分隔),对于第 i 行第 j 列:
- 如果该格子有星星(亮度值 > 0),输出 *
- 如果该格子没有星星(亮度值 = 0),输出其周围 8 个方向上最亮星星的亮度值。如果周围没有星星,输出 0
4 5
0 0 0 0 0
0 3 0 5 0
0 0 0 0 0
0 0 7 0 0
3 3 5 5 5
3 * 5 * 5
3 7 7 7 5
0 7 * 7 0
样例解释
- 以第 1 行第 1 列(值为 0)为例,其周围 8 个方向中最亮的星星是第 2 行第 2 列的亮度 3,所以输出 3。
- 以第 4 行第 1 列(值为 0)为例,其周围只有第 4 行第 3 列的亮度 7,所以输出 7。
数据范围与提示
- 状态
- 已结束
- 规则
- 乐多
- 题目
- 4
- 开始于
- 2026-8-20 10:00
- 结束于
- 2026-9-10 6:00
- 持续时间
- 500 小时
- 主持人
- 参赛人数
- 9