Acwing 蛇形矩阵

Acwing 蛇形矩阵

package javaqq;
import java.util.Scanner;
public class 蛇形 {

     public static void main(String [] args) {
        
         int n,m;
         int [][]res=new int[100][100] ;
         boolean  [ ][ ]st=new boolean[100][100]  ;
         Scanner reader =new Scanner(System.in);
         n=reader.nextInt();
         m=reader.nextInt();
         int dx[]= {-1,0,1,0};
         int dy[]= {0,1,0,-1};
     
         for(int x=0,y=0,d=1,k=1;k<n*m;k++)
         { 
             res[x][y]=k; 
             st[x][y]=true; 
             int a=x+dx[d],b=y+dy[d];
             if(a<0 ||a>=n ||b<0 ||b>=m ||st[a][b])
             {
                 d=(d+1)%4;
                 a=x+dx[d];b=y+dy[d];
             }
             x=a;y=b;
         }
         
         for(int i=0;i<n;i++)
         {
             for(int j=0;j<m;j++)
             {
                 System.out.print(res[i][j]+" ");
             }
             System.out.println("");
             
         }
         
        
    }
}

猜你喜欢

转载自www.cnblogs.com/shenxiaodou/p/12369227.html