#include <stdio.h> int n; char c='A'; int squ[500][500]={0}; void pr(int m); int square(int m, int x, int y, int a); int main(void) { int m, i; scanf("%d", &n); m=n; for(i=0; i<n; i++) { square(m, i, n-1, 1); m--; } pr(n); return 0; } void pr(int m) { int i, j; for(i=0; i<(m*2)-1; i++) { for(j=0; j<(m*2)-1; j++) { if(squ[i][j]!=0) printf("%c ", squ[i][j]); else printf(" "); } printf("\n"); } } int square(int m, int x, int y, int a) { if(a>4) return 0; if(squ[x][y]==0 && x<(n*2)-(1+n-m) && y<(n*2)-(1+n-m) && y>=n-m) { if(c>'Z') c='A'; if(a==1) { squ[x][y]=c++; square(m, ++x, --y, a); } if(a==2) { squ[x][y]=c++; square(m, ++x, ++y, a); } if(a==3) { squ[x][y]=c++; square(m, --x, ++y, a); } if(a==4) { squ[x][y]=c++; square(m, --x, --y, a); } } else { if(a==1) square(m, x, y+2, ++a); if(a==2) square(m, x-2, y, ++a); if(a==3) square(m, x, y-2, ++a); if(a==4) square(m, x-1, y, ++a); } }