#include <bits/stdc++.h>
using namespace std;
int main(){
	int i=0,j=0,n,s=1,a[99][99],f=0;
	cin>>n;
	while(s<=n*n){
		a[i][j]=s++;
		if(f==0){
			j++;
			if(j>n-1||a[i][j]>0){
				j--;
				f=1;
				
			}
		}
		if(f==1){
			i++;
			if(i>n-1||a[i][j]>0){
				i--;
				f=2;
				
			}
		}
		if(f==2){
			j--;
			if(j<0||a[i][j]>0){
				j++;
				f=3;
				
			}
		}
		if(f==3){
			i--;
			if(i<0||a[i][j]>0){
				i++;
				f=0;
				j++;
			}
		}
	}
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			printf("%3d",a[i][j]);
		}
		cout<<endl;
	}
	return 0;
	}

/**************************************************************
	Problem: 1208
	User: fzy001
	Language: C++
	Result: Accepted
	Time:9 ms
	Memory:2076 kb
****************************************************************/