JavaStudy——0082:蛇形填充陣列
阿新 • • 發佈:2018-11-15
總時間限制: 1000ms 記憶體限制: 65536kB
描述
用數字1,2,3,4,…,nn這n2個數蛇形填充規模為nn的方陣。
蛇形填充方法為:
對於每一條左下-右上的斜線,從左上到右下依次編號1,2,…,2n-1;按編號從小到大的順序,將數字從小到大填入各條斜線,其中編號為奇數的從左下向右上填寫,編號為偶數的從右上到左下填寫。
比如n=4時,方陣填充為如下形式:
1 2 6 7
3 5 8 13
4 9 12 14
10 11 15 16
輸入
輸入一個不大於10的正整數n,表示方陣的行數。
輸出
輸出該方陣,相鄰兩個元素之間用單個空格間隔。
樣例輸入
4
樣例輸出
1 2 6 7 3 5 8 13 4 9 12 14 10 11 15 16
Accepted程式碼
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int t=1;
int[][] a=new int[15][15];
int i=1,j=1;
int n=in.nextInt();
while(t<=n*n) {
while(1!= 0) {
if(i<1||j>n) {
i++;j--;break;
}
else {
a[i][j]=t;t++;i--;j++;
}
}
if(j==n) i++;
else if(i==1) j++;
while(1!=0) {
if(i>n||j<1) {
j++ ;i--;break;
}
else {
a[i][j]=t;t++;i++;j--;
}
}
if(i==n) j++;
else if(j==1) i++;
}
for(i=1;i<=n;i++) {
for(j=1;j<n;j++)
System.out.print(a[i][j]+" ");
System.out.println(a[i][n]);
}
in.close();
}
}