import java.util.Scanner;
public class MatrixPrint
{
public static void main(String[] args)
{
System.out.println("请输入元素个数:");
Scanner sc = new Scanner(System.in);
int length = sc.nextInt();
length =(int) Math.sqrt(length);
int[][] a = new int[length][length];
int count = 1;
for(int k=0,n=length; k < n; n--,k++) //环路在不断向内缩小,所以要n--
{
for (int i = k;i < n;i++) //上横元素
a[k][i] = count++;
for (int i = k + 1;i < n;i++) //右纵元素
a[i][n-1] = count++;
for(int i = n - 2;i >= k;i--) //下横元素
a[n-1][i] = count++;
for(int i = n - 2;i > k;i--) //左纵元素
a[i][k] = count++;
}
for (int i = 0;i < length;i++)
{
for (int j = 0;j < length;j++)
System.out.print(a[i][j]+" ");
System.out.print("\n");
}
}
}