#include<iostream>
#include<cstdio>
#include<cstring>
#include<cassert>
using namespace std;
char a[3001][3001];
char b[3001][3001];
char p[6][6];
int pn;
typedef char (*Matrix)[3001];
inline void swap(Matrix &p1,Matrix&p2)
{
Matrix p=p1;
p1=p2;
p2=p;
}
void copy(Matrix m,int a,int b)
{
for(int i=0;i<pn;i++)
{
for(int j=0;j<pn;j++)
{
m[i+a][j+b]=p[i][j];
}
}
}
void fill(Matrix m,int a,int b)
{
for(int i=0;i<pn;i++)
{
for(int j=0;j<pn;j++)
{
m[i+a][j+b]=' ';
}
}
}
int main()
{
int n;
while(scanf("%d",&pn)!=EOF)
{
if(pn<=0)
{
break;
}
getchar();
for(int i=0;i<pn;i++)
{
gets(p[i]);
}
scanf("%d",&n);
Matrix p1=a;
Matrix p2=b;
int size=1;
p1[0][0]='#';
for(int k=1;k<=n;k++)
{
for(int i=0;i<size;i++)
{
for(int j=0;j<size;j++)
{
if(p1[i][j]!=' ')
{
copy(p2,i*pn,j*pn);
}
else
{
fill(p2,i*pn,j*pn);
}
}
}
size=size*pn;
swap(p1,p2);
}
for(int i=0;i<size;i++)
{
p1[i][size]=0;
puts(p1[i]);
}
}
#ifdef _DEBUG
system("pause");
#endif
return 0;
}
/**************************************************************
Problem: 1161
User: cust123
Language: C++
Result: Accepted
Time:20 ms
Memory:19108 kb
****************************************************************/
题目1161:Repeater
最新推荐文章于 2022-01-20 18:46:45 发布