import java.util.Scanner;
/**
* Author whales
* Data 2023/3/13 16:46
*/
public class ArrayTest {
public static void main(String[] args) {
/*
0 1 2
0 1 2 3
1 8 9 4
2 7 6 5
1 0,0
2 0,1
3 0,2 <
4 1,2
5 2,2 <
6 2,1
7 2,0 <
8 1,0 <
9 1,1
*/
Scanner scan = new Scanner(System.in);
System.out.print("num = ");
int num = scan.nextInt();
int[][] a = new int[num][num];
int nums = num * num; // 最大值
int n = 1; // 起始值
int i = 0; // a[i][]
int j = 0; // a[][j]
int x = 0; // 上界
int y = num; // 下界
while (nums >= n) {
// 下界 上界
// 右 i,j++ x y
for (; j < y; j++) {
if (nums < n) {
break;
}
a[i][j] = n++;
// System.out.println((n - 1) + "[" + i + j + "]");
}
j--;
i++;
// System.out.println();
// 下 i++,j x y
for (; i < y; i++) {
if (nums < n) {
break;
}
a[i][j] = n++;
// System.out.println((n - 1) + "[" + i + j + "]");
}
i--;
j--;
y--;
// System.out.println();
// 左 i,j-- x=1 y=1
for (; j >= x; j--) {
if (nums < n) {
break;
}
a[i][j] = n++;
// System.out.println((n - 1) + "[" + i + j + "]");
}
j++;
i--;
x++;
// System.out.println();
// 上 i--,j
for (; i >= x; i--) {
if (nums < n) {
break;
}
a[i][j] = n++;
// System.out.println((n - 1) + "[" + i + j + "]");
}
i++;
j++;
// System.out.println("x = " +x);
}
// 遍历数组
System.out.println();
for (i = 0; i < num; i++) {
for (j = 0; j < num; j++) {
System.out.print(a[i][j] + "\t");
}
System.out.println();
}
}
}