蓝桥杯-扫雷

这题不难,就是麻烦一点,这里暴力求解了直接

题目链接:
扫雷

AC代码:

java 复制代码
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        int[][] arr = new int[n][m];
        for(int i=0;i<n;i++) {
        	for(int j=0;j<m;j++) {
        		arr[i][j]=scan.nextInt();
        	}
        }
        int[][] res = new int[n][m];
//        Arrays.fill(res, 0);
        for(int i=0;i<n;i++) {
        	for(int j=0;j<m;j++) {
        		if (arr[i][j]!=0) {
					res[i][j]=9;
					continue;
				}
        		if (i!=0) {
					res[i][j]=res[i][j]+arr[i-1][j];
				}
        		if (i!=n-1) {
        			res[i][j]=res[i][j]+arr[i+1][j];
				}
        		if (j!=0) {
        			res[i][j]=res[i][j]+arr[i][j-1];
				}
        		if (j!=m-1) {
        			res[i][j]=res[i][j]+arr[i][j+1];
				}
        		if (i!=0&&j!=0) {
					res[i][j]=res[i][j]+arr[i-1][j-1];
				}
        		if (i!=n-1&&j!=m-1) {
					res[i][j]=res[i][j]+arr[i+1][j+1];
				}
        		if (i!=0&&j!=m-1) {
					res[i][j]=res[i][j]+arr[i-1][j+1];
				}
        		if (i!=n-1&&j!=0) {
					res[i][j]=res[i][j]+arr[i+1][j-1];
				}
        	}
        }
        for(int i=0;i<n;i++) {
        	for(int j=0;j<m;j++) {
        		System.out.print(res[i][j]+" ");
        	}
        	System.out.println();
        }
        scan.close();
	}
}
相关推荐
雨中飘荡的记忆1 小时前
保证金系统入门到实战
java·后端
Nyarlathotep01132 小时前
Java内存模型
java
暮色妖娆丶6 小时前
不过是吃了几年互联网红利罢了,我高估了自己
java·后端·面试
NE_STOP6 小时前
MyBatis-参数处理与查询结果映射
java
狂奔小菜鸡7 小时前
Day40 | Java中的ReadWriteLock读写锁
java·后端·java ee
SimonKing8 小时前
JetBrains 用户狂喜!这个 AI 插件让 IDE 原地进化成「智能编码助手」
java·后端·程序员
狂奔小菜鸡8 小时前
Day39 | Java中更灵活的锁ReentrantLock
java·后端·java ee
NE_STOP21 小时前
MyBatis-配置文件解读及MyBatis为何不用编写Mapper接口的实现类
java
后端AI实验室1 天前
用AI写代码,我差点把漏洞发上线:血泪总结的10个教训
java·ai