Pages

Sunday 9 September 2012

UVA - 10189 - Minesweeper

import java.io.*;
import java.util.IllegalFormatException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.swing.JFileChooser;
import javax.swing.JOptionPane;

public class Main{

    public static void main(String[] args) throws FileNotFoundException {
        TextIO.readStream(System.in);
        int counter=0;
       while(true){
            int x=TextIO.getInt();
            int y=TextIO.getInt();
            if(x==0 && y==0)
                break;
            int map[][]=new int[x+2][y+2];
            char [][]row=new char[x+2][y+2];
           
            for(int i=1;i<x+1;i++){
                for(int j=1;j<y+1;j++){
                row[i][j]=TextIO.getChar();
                }
            }
           
            for(int i=1;i<x+1;i++){
                 for(int j=1;j<y+1;j++){
                     if(row[i][j]=='*'){
                             map[i-1][j]++;
                             map[i+1][j]++;
                             map[i][j-1]++;
                             map[i][j+1]++;
                            map[i-1][j-1]++;
                            map[i-1][j+1]++;
                            map[i+1][j-1]++; 
                            map[i+1][j+1]++;
                     }
                 }
            }
            if (++counter > 1) System.out.println();
            System.out.println("Field #" + counter + ":");
            for(int i=1;i<x+1;i++){
               for(int j=1;j<y+1;j++){
                   if(row[i][j]=='*'){
                       System.out.print('*');
                   } else{
                      System.out.print(map[i][j]);
                   }
               }
                System.out.println();
            }
        }   
       
   }
}

No comments:

Post a Comment