jkluio1 @ 2024-02-13 20:21:10
#include<iostream>
using namespace std;
int main()
{
int cent=0,n,x,y;
cin >> n;
for (int i = 0; i < 2*n; i++)
{
cin >> x;
for (int j = 0; j < x; j++)
{
if (i % 2 == 1)
cout << '1';
else
cout<<'0';
cent++;
if (cent % n == 0)
cout << '\n';
}
}
return 0;
}
十分,就十分,不知道为什么一直过不了,我感觉逻辑好像没问题呀QAQ,求大佬帮帮;
by chenyyegg @ 2024-02-13 20:29:28
首先,你的循环次数应该是n*n
by jkluio1 @ 2024-02-16 21:14:06
@chenyyegg 为什么要是nn呢,明明只要输入0,1两种状态的数,不是2n个数就够了咩,大佬求解QAQ
by chenyyegg @ 2024-02-17 12:40:16
@jkluio1 实在对不起,看错题了
by chenyyegg @ 2024-02-17 12:41:32
@jkluio1 你应该用while循环输入
by chenyyegg @ 2024-02-17 12:45:01
@jkluio1 hack一下:
7 49
正确输出:都是0 你肯定不对
by Xia_Yu_Chen @ 2024-02-25 23:39:45
题目中没有告诉你输入两个数是一行,你判断不出来第一个输入n后有多少个输入,所以应该用while输入,而不是2 * n,看一下样例解释