#include<bits/stdc++.h>
#define ll long long
#define rep(i,x,y) for(int i=x;i<=y;i++)
#define pep(i,x,y) for(int i=x;i>=y;i--)
#define rewp(i,x,y) for(int i=x;i<y;i++)
using namespace std;
char kk[630][630];
void box(int n,int x,int y){
if(n==1) kk[x][y]='X';
else{
int m=pow(3,n-2);
box(n-1,x,y);
box(n-1,x+2*m,y);
box(n-1,x+m,y+m);
box(n-1,x,y+2*m);
box(n-1,x+2*m,y+2*m);
}
}
main(){
int n;
while(1){
scanf("%d",&n);
if(n==-1) return 0;
int c=pow(3,n-1);
memset(kk,' ',sizeof(kk));
box(n,0,0);
rewp(i,0,c){
rewp(j,0,c) printf("%c",kk[i][j]);
printf("\n");
}
printf("-\n");
}
return 0;
}
样例过了0分
望dalao指点一二