Advertisement
taweesoft

Untitled

Sep 25th, 2014
247
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //elab-source: NewPavement.java
  2. import java.util.Scanner;
  3. public class NewPavement {
  4.     public static void main(String[]args){
  5.         Scanner input=new Scanner(System.in);
  6.         int size = input.nextInt();
  7.         int matrix[][]=new int [size][size];
  8.         for (int i=0;i<size;i++){
  9.             for (int j=0;j<size;j++){
  10.                 int in=input.nextInt();
  11.                 matrix[i][j]=in;
  12.             }
  13.         }
  14.         int level=0;
  15.         int newi=0; int newj=0;
  16.         for (int i=0;i<size;i++){
  17.             for (int j=0;j<size;j++){
  18.                 if (matrix[i][j]==1){
  19.                     level=matrix[i][j];
  20.                     newi=i;
  21.                     newj=i;
  22.                 }
  23.             }
  24.         }
  25.        
  26.         for (int i=newi;i<size;i++){
  27.             for (int j=newj;j<size;j++){
  28.                 if (i==0&&j==0){
  29.                     if(matrix[i+1][j]==level+1){
  30.                         level=matrix[i+1][j];
  31.                         i=i+1;
  32.                         j=j;
  33.                     }
  34.                     if(matrix[i][j+1]==level+1){
  35.                         level=matrix[i][j+1];
  36.                         i=i;
  37.                         j=j+1;
  38.                     }
  39.                    
  40.                 }
  41.                 if(j==0&&i==size-1){
  42.                     if(matrix[i-1][j]==level+1){
  43.                         level=matrix[i-1][j];
  44.                         i=i-1;
  45.                         j=j;
  46.                     }
  47.                     if(matrix[i][j+1]==level+1){
  48.                         level=matrix[i][j+1];
  49.                         i=i;
  50.                         j=j+1;
  51.                     }
  52.                    
  53.                 }
  54.                 if(j==0&&i!=0&&i!=size-1){
  55.                     if (matrix[i-1][j]==level+1){
  56.                         level=matrix[i-1][j];
  57.                         i=i-1;
  58.                         j=j;
  59.                     }
  60.                     if (matrix[i+1][j]==level+1){
  61.                         level=matrix[i+1][j];
  62.                         i=i+1;
  63.                         j=j;
  64.                     }
  65.                     if (matrix[i][j+1]==level+1){
  66.                         level=matrix[i][j+1];
  67.                         i=i;
  68.                         j=j+1;
  69.                     }
  70.                    
  71.                 }
  72.                 if(i==0&&j==size-1){
  73.                     if (matrix[i][j-1]==level+1){
  74.                         level=matrix[i][j-1];
  75.                         i=i;
  76.                         j=j-1;
  77.                     }
  78.                     if (matrix[i+1][j]==level+1){
  79.                         level=matrix[i+1][j];
  80.                         i=i+1;
  81.                         j=j;
  82.                     }
  83.                    
  84.                 }
  85.                 if(i==0&&j!=0&&j!=size-1){
  86.                     if (matrix[i+1][j]==level+1){
  87.                         level=matrix[i+1][j];
  88.                         i=i+1;
  89.                         j=j;
  90.                     }
  91.                     if (matrix[i][j-1]==level+1){
  92.                         level=matrix[i][j-1];
  93.                         i=i;
  94.                         j=j-1;
  95.                     }
  96.                     if(matrix[i][j+1]==level+1){
  97.                         level=matrix[i][j+1];
  98.                         i=i;
  99.                         j=j+1;
  100.                     }
  101.                    
  102.                 }
  103.                 if (i==size-1&&j==size-1){
  104.                     if(matrix[i][j-1]==level+1){
  105.                         level=matrix[i][j-1];
  106.                         i=i;
  107.                         j=j-1;
  108.                     }
  109.                     if(matrix[i-1][j]==level+1){
  110.                         level=matrix[i-1][j];
  111.                         i=i-1;
  112.                         j=j;
  113.                     }
  114.                    
  115.                 }
  116.                 if(j==size-1&&i!=0&&i!=size-1){
  117.                     if(matrix[i-1][j]==level+1){
  118.                         level=matrix[i-1][j];
  119.                         i=i-1;
  120.                         j=j;
  121.                     }
  122.                     if(matrix[i+1][j]==level+1){
  123.                         level=matrix[i+1][j];
  124.                         i=i+1;
  125.                         j=j;
  126.                     }
  127.                     if(matrix[i][j-1]==level+1){
  128.                         level=matrix[i][j-1];
  129.                         i=i;
  130.                         j=j-1;
  131.                     }
  132.                    
  133.                 }
  134.                 if(i==size-1&&j!=0&&j!=size-1){
  135.                     if(matrix[i-1][j]==level+1){
  136.                         level=matrix[i-1][j];
  137.                         i=i-1;
  138.                         j=j;
  139.                     }
  140.                     if(matrix[i][j-1]==level+1){
  141.                         level=matrix[i][j-1];
  142.                         i=i;
  143.                         j=j-1;
  144.                     }
  145.                     if(matrix[i][j+1]==level+1){
  146.                         level=matrix[i][j+1];
  147.                         i=i;
  148.                         j=j+1;
  149.                     }
  150.                    
  151.                 }
  152.                 if(i!=size-1&&i!=0&&j!=size-1&&j!=0){
  153.                     if(matrix[i-1][j]==level+1){
  154.                         level=matrix[i-1][j];
  155.                         i=i-1;
  156.                         j=j;
  157.                     }
  158.                     if(matrix[i][j-1]==level+1){
  159.                         level=matrix[i][j-1];
  160.                         i=i;
  161.                         j=j-1;
  162.                     }
  163.                     if(matrix[i][j+1]==level+1){
  164.                         level=matrix[i][j+1];
  165.                         i=i;
  166.                         j=j+1;
  167.                     }
  168.                     if(matrix[i+1][j]==level+1){
  169.                         level=matrix[i+1][j];
  170.                         i=i+1;
  171.                         j=j;
  172.                     }
  173.                    
  174.                 }
  175.                
  176.             }
  177.         }
  178.        
  179.         System.out.print(level);
  180.     }
  181. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement