王宏宇11 @ 2019-01-27 18:21:41
下面见0分代码,因为最后一个换行......
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int a[50000];
int main()
{int N,x,s=0;
int flag=3;//奇数为0;偶数为1;
cin>>N;
for(int i=1;i<=N*N;i++)
{cin>>x;
if(flag==2+N*N)
break;
for(int j=1;j<=x;j++)
{if(flag%2==1)
{a[i]=0;
cout<<a[i];
s++;
if(s>=N)
{cout<<endl; s=0;}
}
if(flag%2==0)
{a[i]=1;
cout<<a[i];
s++;
if(s>=N)
{cout<<endl; s=0;}
}
}flag++;
}
return 0;
}
by Meatherm @ 2019-01-27 18:23:26
@王宏宇11 不应该呀..洛谷会自动屏蔽文末换行
by 王宏宇11 @ 2019-01-27 18:25:06
@兹磁洛谷 真的可以正常输出,和样例给的结果和测试点的结果都一样,就是多了一个换行.....
by wwlw @ 2019-01-27 18:26:53
这个没有影响吧
by Meatherm @ 2019-01-27 18:27:52
@王宏宇11 请检查文中空格。
按理说是不会这样的。
我经常
for(int i=1;i<=n;i++)cout<<a[i]<<endl;
也没出事
by kkksx @ 2019-01-27 18:36:22
@王宏宇11 所以说flag有神马用
by 王宏宇11 @ 2019-01-28 08:41:17
@皮皮鳝 flag用来判断输出是0或1的
by 王宏宇11 @ 2019-01-28 08:42:33
@wwlw 有影响吧,因为我输出结果一样,但是挂0,感觉就是多了换行
by 王宏宇11 @ 2019-01-28 08:43:09
@兹磁洛谷 可是我这样真的挂0,结果对的丫
by kkksx @ 2019-01-28 09:07:37
@王宏宇11 不对啊,你的cin>>x在循环里面,要输入n*n个x才行,但是没有那么多输入。。
by 王宏宇11 @ 2019-01-29 08:34:26
@皮皮鳝 emmmm,好像都点道理,确实错了,结果居然会一样,那可以怎么改呢