• + 0 comments

    Java Solution

    import java.util.*;
    
    public class Solution {
    
        public  static char[][] convertArray(List<String> grid){
            int n = grid.size();
            char[][] arr = new char[n][n];
            for(int i=0;i<n;i++){
                for(int j=0;j<n;j++){
                    char num = grid.get(i).charAt(j);
                    arr[i][j]=num;
                }
            }
            return arr;
        }
    
        public static void cavityMap(List<String> grid) {
            char[][] arr = convertArray(grid);
            int n = arr.length;
            for(int i=1;i<n-1;i++){
                for(int j=1;j<n-1;j++){
                    int target =  arr[i][j]-'0';
                    int up =  arr[i-1][j]-'0';
                    int down =  arr[i+1][j]-'0';
                    int left =  arr[i][j-1]-'0';
                    int right =  arr[i][j+1]-'0';
                    if(up < target && down < target && left < target && right < target){
                        arr[i][j]='X';
                    }
                }
            }
            for(int i=0;i<n;i++){
                for(int j=0;j<n;j++){
                    System.out.print(arr[i][j]);
                }
                System.out.println();
            }
        }
    
        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
            int n = sc.nextInt();
            List<String> list = new ArrayList<String>();
            for(int i=0;i<n;i++){
                list.add(sc.next());
            }
            cavityMap(list);
            sc.close();
        }
    }