AcWing 756. 蛇形矩阵-java
原题链接
困难
作者:
单箭头
,
2019-05-12 14:44:35
,
所有人可见
,
阅读 1022
java 代码
package com.company.ForTruth;
import java.util.Scanner;
public class 蛇形矩阵 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int N=sc.nextInt(),M=sc.nextInt();
int nt=N,mt=M;
int[][] arr=new int[N][M];
int n=0,m=0,cnt=1;
while (N>0 && M>0){
if(N==1){
for (int i=0;i<M;i++){
arr[n][m++]=cnt++;
}
break;
}
if(M==1){
for (int i=0;i<N;i++){
arr[n++][m]=cnt++;
}
break;
}
for (int i=0;i<M-1;i++){
arr[n][m++]=cnt++;
}
for (int i=0;i<N-1;i++){
arr[n++][m]=cnt++;
}
for (int i=0;i<M-1;i++){
arr[n][m--]=cnt++;
}
for (int i=0;i<N-1;i++){
arr[n--][m]=cnt++;
}
N-=2;
M-=2;
m++;
n++;
}
for (int i=0;i<nt;i++){
for (int j=0;j<mt;j++){
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
}