提交时间:2024-08-20 21:23:16
运行 ID: 173543
#include<iostream> #include<string> using namespace std; char ch[10000][10000]; //int z,h; void fen(int n,int z,int h){ if(n==1){ ch[z][h]='X'; return ; } int o=1; for(int i=0;i<n-2;i++)o*=3; fen(n-1,z+0,0+h); fen(n-1,z+0,o*2+h); fen(n-1,o+z,o+h); fen(n-1,o*2+z,0+h); fen(n-1,o*2+z,o*2+h); } void print(int r){ for(int i=0;i<r;i++){ for(int j=0;j<r;j++){ if(ch[i][j]=='X')cout<<'X'; else cout<<" "; } cout<<endl; } } int main(){ int n; while(cin>>n){ if(n==-1)return 0; int r=1; for(int i=0;i<n-1;i++)r*=3; fen(n,0,0); print(r); cout<<"-"<<endl; } }