2026年6月GESP真题及题解C四级扫雷题目描述小杨同学正在游玩经典游戏「扫雷」他想自己生成一个「扫雷」的地图。小杨同学希望生成的地图大小为n nn行m mm列一共n × m n \times mn×m个区块。区块行号为1 , 2 , ⋯ , n 1, 2, \cdots, n1,2,⋯,n列号为1 , 2 , ⋯ , m 1, 2, \cdots, m1,2,⋯,m。其中一些区块为雷区其它区块不为雷区。小杨同学指定了q qq个区块为雷区而其它区块均不为雷区。小杨同学希望你帮忙计算非雷区的区块每个区块与多少个雷区相邻我们定义区块相邻当且仅当两个区块至少有一个公共顶点也就是说对于不在地图边缘的区块周围8 88个区块均与其相邻。输入格式输入包含q 1 q 1q1行。第一行三个正整数n nn,m mm和q qq分别表示地图行数和列数以及雷区数量。接下来的q qq行每行有2 22个整数分别表示第i ii个雷区的行号和列号。保证输入的雷区不重复。输出格式输出n nn行每行m mm个字符使用空格分割对于第i ii行第j jj列输出地图对应区块的信息如果为雷区输出*如果不是雷区输出其相邻雷区数量输出0 00到8 88中的一个数字。输入输出样例 1输入 13 4 4 1 1 1 3 2 4 3 2输出 1* 2 * 2 2 3 3 * 1 * 2 1说明/提示输出解释 1根据输入在3 × 4 3 \times 43×4的地图上有4 44个雷区分别是( 1 , 1 ) (1,1)(1,1)( 1 , 3 ) (1,3)(1,3)( 2 , 4 ) (2,4)(2,4)和( 3 , 2 ) (3,2)(3,2)如输出样例中*所示其它非雷区区块的相邻雷区数量可以直观看出。数据范围3 ≤ n , m ≤ 500 3 \le n, m \le 5003≤n,m≤500,1 ≤ q ≤ n ⋅ m 1 \le q \le n \cdot m1≤q≤n⋅m。输入的雷区必定在地图内且不重复注意行号和列号均从1 11开始。思路分析用布尔数组is[][]标记地雷位置读入时置true。遍历整个地图对每个格子若为地雷输出*否则用 8 方向偏移数组统计周围地雷个数输出该数字。时间复杂度 O(n·m·8)空间 O(n·m)满足数据范围。代码实现#includebits/stdc.husingnamespacestd;intn,m,q;//行、列、雷数boolis[510][510];//标记地雷intdx[8]{-1,-1,-1,0,1,1,1,0};//行偏移intdy[8]{-1,0,1,1,1,0,-1,-1};//列偏移intmain(){cinnmq;for(inti1;iq;i){intr,c;cinrc;is[r][c]true;//标记地雷}for(inti1;in;i){for(intj1;jm;j){if(is[i][j]){//地雷cout* ;//输出星号和空格}else{//非地雷intcnt0;//计数器for(intk0;k8;k){//8个方向intnxidx[k];intnyjdy[k];if(nx1nxnny1nymis[nx][ny])cnt;//合法且为雷则计数}coutcnt ;//输出数字和空格}}cout\n;//换行}return0;}功能分析输入读取n,m,q及q个地雷坐标标记到is数组中。处理双重循环遍历每个格子非雷格子通过 8 方向偏移数组统计邻居地雷数。输出每行输出m个元素每个元素后跟一个空格。性能最大 500×500 格子每个检查 8 次操作次数约 2×10⁶轻松通过。各种学习资料助力大家一站式学习和提升#includebits/stdc.husingnamespacestd;intmain(){cout########## 一站式掌握信奥赛知识! ##########;cout############# 冲刺信奥赛拿奖! #############;cout###### 课程购买后永久学习不受限制! ######;return0;}【秘籍汇总】完整csp信奥赛C学习资料1、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转2、CSP信奥赛C竞赛拿奖视频课https://edu.csdn.net/course/detail/40437 点击跳转https://edu.csdn.net/course/detail/41081 点击跳转3、csp信奥赛高频考点知识详解及案例实践CSP信奥赛C动态规划https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转CSP信奥赛C标准模板库STLhttps://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转信奥赛C提高组csp-s知识详解及案例实践https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转4、csp信奥赛冲刺一等奖有效刷题题解信奥赛C普及组CSP-J一等奖通关刷题题单及题解https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转信奥赛C普及组csp-j初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转信奥赛C提高组csp-s初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转5、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转GESP(C 七级八级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}