牛客網 迴環矩陣
阿新 • • 發佈:2018-11-10
連結:https://www.nowcoder.com/questionTerminal/205b62c2618546d6a52f23552b2699f6
來源:牛客網
[問答題]
程式設計輸出以下格式的資料。
when i=1:
7 8 9
6 1 2
5 4 3
when i=2:
21 22 23 24 25
20 7 8 9 10
19 6 1 2 11
18 5 4 3 12
17 16 15 14 13
import java.util.*; import java.math.*; public class Main{ static int maxn=(int)(500+10); static int[][] a=new int[maxn][maxn]; static void print(int n) { int start=(2*n+1),end=1; int num=(2*n+1)*(2*n+1); while(start>end) { //up for(int i=start;i>end;i--) a[end][i]=num--; //left for(int i=end;i<start;i++) a[i][end]=num--; //bottom for(int i=end;i<start;i++) a[start][i]=num--; //right for(int i=start;i>end;i--) a[i][start]=num--; //update start--;end++; } a[n+1][n+1]=1; int len=2*n+1; for(int i=1;i<=len;i++) { for(int j=1;j<=len;j++) { System.out.print(a[i][j]); if(j==len) System.out.println(); else System.out.print(" "); } } } public static void main(String[] args) { Scanner cin=new Scanner(System.in); int n=cin.nextInt(); print(n); cin.close(); } }