Faith


私信TA

用户名:1310510120

访问量:42372

签 名:

求介绍工作

等  级
排  名 217
经  验 6352
参赛次数 1
文章发表 54
年  龄 0
在职情况 学生
学  校 武汉生物工程学院
专  业

  自我简介:

解题思路:

尝试了6次还是格式错误,有大佬知道的告诉我一下为什么吗

注意in.next是读取空格或者换行之前的,这题输入没有空格

注意事项:





参考代码:

import java.util.Scanner;
public class 扫雷 {
 public static void main(String[] args) {
  Scanner in=new Scanner(System.in);
  int num=0;//第num个矩阵
  while(in.hasNext()){
   num++;
   int n=in.nextInt();
   int m=in.nextInt();
   if(n==0||m==0)return;
   String a[][]=new String[n][m];
   int b[][]=new int[n][m];
   for(int i=0;i<n;i++){
    String temp=in.next();
    for(int j=0;j<m;j++){     
  
      a[i][j]=""+temp.charAt(j);
    
     
     if(a[i][j].equals("*")){
      b[i][j]=9;//代表这个位置有雷
      if(i-1>=0)b[i-1][j]++;//上
      if(i-1>=0&&j-1>=0)b[i-1][j-1]++;//左上
      if(i-1>=0&&j+1<m)b[i-1][j+1]++;//右上
      if(i+1<n)b[i+1][j]++;//下
      if(i+1<n&&j-1>=0)b[i+1][j-1]++;//左下
      if(i+1<n&&j+1<m)b[i+1][j+1]++;//右下
      if(j-1>=0)b[i][j-1]++;//左
      if(j+1<m)b[i][j+1]++;//右
     }
     
    }
    
   }
   
   //输出
   System.out.println("Field #"+num+":");
   for(int i=0;i<n;i++){
    
    for(int j=0;j<m;j++){
    if(b[i][j]>=9)System.out.print("*");
    else System.out.print(b[i][j]);
    }
    System.out.println();
   }
   System.out.println();
  }
 }
}

 

0.0分

0 人评分

  评论区

测试数据错了
2019-01-24 18:17:25
  • «
  • 1
  • »