Result: Accepted
Time: 81ms
Memory: 1380kB
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
bool mp[110][50][50];
char ss[150][150];
int main(){
int T;
scanf("%d",&T);
while(T--){
memset(ss,0,sizeof(ss));
memset(mp,0,sizeof(mp));
int n,m;
scanf("%d%d",&n,&m);
int t,c,a,b;
for(int k=0;k<m;k++){
scanf("%d%d%d%d",&t,&c,&a,&b);
if(t==2){
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(i==c&&j>=a&&j<=b)
mp[k][i][j]=1;
else
mp[k][i][j]=0;
}
else if(t==0){
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(j==c&&i>=a&&i<=b)
mp[k][i][j]=1;
else
mp[k][i][j]=0;
}
else{
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(j==t*i+c&&i>=a&&i<=b)
mp[k][i][j]=1;
else
mp[k][i][j]=0;
}
}
for(int i=0;i<n;i++)
for(int j=0;j<n;j++){
bool flag=0;
for(int k=0;k<m;k++)
if(mp[k][i][j])flag=1;
if(flag)ss[i][j]='*';
else
ss[i][j]=' ';
}
for(int i=0;i<n;i++)
printf("%s\n",ss[i]);
int q,z;
scanf("%d",&q);
while(q--){
scanf("%d",&z);
for(int i=0;i<n;i++){
for(int p=0;p<z;p++){
for(int j=0;j<n;j++){
for(int u=0;u<z;u++)
printf("%c",ss[i][j]);
}
printf("\n");
}
}
}
}
}