#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define ALL(x) (x).begin(),(x).end() #define RALL(x) (x).rbegin(), (x).rend() #define rev(i,n) for(int (i)=(n-1);(i)>=0;(i)--) #define repp(i,n) for(int (i)=1;(i)<=(n);(i)++) #define rep(i,n) for(int (i)=0;(i)<(n);(i)++) #define rev(i,n) for(int (i)=(n-1);(i)>=0;(i)--) #define clr(a) memset((a), 0 ,sizeof(a)) typedef pair P; typedef vector > pii; typedef map mi; int A[50][50]; int dx[]={ 0, 1, 0, -1 }; int dy[]={ 1, 0, -1, 0 }; int main(){ int n; cin >> n; int x=0,y=0,k=0; for(int i=1;i<=n*n;i++){ A[x][y]=i; if(i==n*n) break; while(1){ int nx=x+dx[k]; int ny=y+dy[k]; if(nx<0||ny<0||nx>=n||ny>=n||A[nx][ny]){ k=(k+1)%4; continue; } x=nx; y=ny; break; } } for(int i=0;i