#include<bits/stdc++.h>
using namespace std;
int i=1,n,j=1,a[10][10],s=1,f;
int main()
{
	cin>>n;
	while(s<=n*n){
		a[i][j]=s++;
		if(f==0){
			j++;
			if(j>n||a[i][j]>0){
				j--;
				f=1;
				i++;
			}
		}else if(f==1){
			i++;
			if(i>n||a[i][j]>0){
				i--;
				f=2;
				j--;
			}
		}else if(f==2){
			j--;
			if(j<1||a[i][j]>0){
				j++;
				f=3;
				i--;
			}
		}else if(f==3){
			i--;
			if(j<1||a[i][j]>0){
				i++;
				f=0;
				j++;
			}
		}
	}
	for(i=1;i<=n;i++){
		for(j=1;j<=n;j++){
			cout<<setw(3)<<a[i][j];
		}
		cout<<endl;
	}
	return 0;
}
/**************************************************************
	Problem: 1208
	User: zzz
	Language: C++
	Result: Accepted
	Time:8 ms
	Memory:2072 kb
****************************************************************/