P5461 蒟蒻求助
测试点对,一交全WA
#include<bits/stdc++.h>
using namespace std;
int n;
bool k[5000][5000]={0};
int mi(int,int);
void mian(int,int,int);
int main()
{
cin>>n;
mian(1,1,n);
for(int i=1;i<=mi(2,n);i++)
{
for(int j=1;j<=mi(2,n);j++)
{
if(k[i][j]==0)
cout<<1;
if(k[i][j]==1)
cout<<0;
}
cout<<endl;
}
return 0;
}
void mian(int a,int b,int x)
{
if(x==0)
return;
int wide=mi(2,x-1);
for(int i=a;i<=wide+a-1;i++)
for(int j=b;j<=wide+b-1;j++)
k[i][j]=1;
mian(wide+a,b,x-1);
mian(a,wide+b,x-1);
mian(wide+a,wide+b,x-1);
return;
}
int mi(int mi_a,int mi_b)
{
if(mi_b==0)
return 1;
int mi_c=1;
for(int i=1;i<=mi_b;i++)
mi_c=mi_c*mi_a;
return mi_c;
}