题解 | 扫雷

扫雷

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

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            int n = in.nextInt();
            int m = in.nextInt();
            in.nextLine(); // 消耗换行符
            //定义个大一圈的数组
            char[][] arr = new char[n + 2][m + 2];
            //先把一圈 .装进去
            for (int i = 0; i < n + 2; i++) {
                 for (int j = 0; j < m + 2; j++) {                   
                    if (i == 0 || j == 0 || i == n+1 || j == m+1) {
                        arr[i][j] = '.';
                    }
                 }
            }
            //再赋值内圈
            for (int i = 1; i < n + 1; i++) {
                String str = in.nextLine();
                char[] ch = str.toCharArray();
                for (int j = 1; j < m + 1; j++) {                   
                    arr[i][j]=ch[j-1];
                }
            }
            //定义arr1装结果
            char[][] arr1 = arr;
            //遍历内圈
            for (int i = 1; i < n+1; i++) {
                for (int j = 1; j < m+1; j++) {
                    int res = 0;
                    if (arr[i][j] != '*') {
                        for (int k = i - 1; k <= i + 1; k++) {
                            for (int l = j - 1; l <= j + 1; l++) {
                                if ("*".equals(String.valueOf(arr[k][l]))) {
                                    res++;
                                }
                            }
                        }
                        arr1[i][j] =(char)(res + '0');
                    }
                }
            }
            //输出结果arr1
            for (int i = 1; i < n+1; i++) {
                for (int j = 1; j < m+1; j++) {
                    System.out.print(arr1[i][j]);
                }
                System.out.println();
            }
        }
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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