#include<bits/stdc++.h>
using namespace std;
typedef pair<int,int> pii;
const int N=50;
int n,a[N][N];//记录幻方
pii g[N*N]; //记录数字i在数组位置
int main(){
cin>>n;
int u=(n+1)/2;
a[1][u]=1;
g[1]={1,u};
for(int i=2;i<=n*n;i++){
//记录上一数字行、列位置
int h=g[i-1].first;
int l=g[i-1].second;
if(h==1){
if(l==n) a[h-1][l]=i,g[i]={h-1,l};
else a[n][l+1]=i,g[i]={n,l+1};
}
else{
if(l==n) a[h-1][1]=i,g[i]={h-1,1};
else {
if(a[h-1][l+1]==0) a[h-1][l+1]=i,g[i]={h-1,l+1};
else a[h+1][l]=i,g[i]={h+1,l};
}
}
}
//输出答案
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
cout<<a[i][j]<<" ";
cout<<endl;
}
return 0;
}