xklong @ 2021-12-31 15:01:06
#include <bits/stdc++.h>
using namespace std;
int a[10005],n,h,ans;
int main()
{
cin>>n;
for(int i=0;i<n*2;i++) cin>>a[i];
for(int i=0;i<n;i++)
{
for(int k=0;k<a[ans];k++)
{
cout<<'0';
h++;
if(h==n)
{
cout<<endl;
h=0;
}
}
ans++;
for(int j=0;j<a[ans];j++)
{
cout<<'1';
h++;
if(h==n)
{
cout<<endl;
h=0;
}
}
ans++;
}
return 0;
}
代码见上
求解
by kai_xk @ 2021-12-31 15:32:44
AC答案
#include<bits/stdc++.h>
using namespace std;
int main(){
int p,n;
bool flag=0;
cin>>n;
int y=0;
for(int sum=0;sum<n*n;){
cin>>p;
sum+=p;
for(int i=1;i<=p;i++){
cout<<flag;
y++;
if(y==n){
cout<<endl;
y=0;
}
}
flag=!flag;
}
}
by Misaka_Mik0t0 @ 2021-12-31 15:41:27
@error300 正解题解区里多得是。楼主又不要正确代码,要怎么改才能改正确。
by 编码落寞 @ 2021-12-31 16:46:08
@xklong
N最大为200。N*N可以达到40000. 所以很可能你数组开小了。而且你的提交记录显示输出太少。
by kai_xk @ 2021-12-31 19:07:52
@kinnikinnick233 抱歉萌新一枚无恶意
by xklong @ 2022-01-01 16:16:20
@编码落寞 谢谢
by xklong @ 2022-01-01 16:17:05
@error300 谢谢