bk492511 @ 2022-09-05 13:25:51
看别人的答案,感觉大家都不用c,看c++看不懂。。。 我自己试着优化了几下,感觉是算法的问题, 我先放代码奥
#include <stdio.h>
int A[40010]={};//这是不是得开到40000奥,我蒙的,200*200
void print(int a,int* p,int b)
{
int cir=0;
for(cir=0;cir<a;cir++)
{
printf("%d",b);
*p=*p+1;
if((*p)%7==0)
{
printf("\n");
}
}
}
int main()
{
int a=0,cir=0,count=0,tmp=0;
scanf("%d",&a);//我这边这个a不知道和后面联系起来,我是用的getchar捕获的有多少次数据输入,然后输出的
for(cir=0;(getchar()!='\n');cir++)
{
scanf("%d",&A[cir]);
count++;
}
for(cir=0;cir<count;cir++)
{
print(A[cir],&tmp,cir%2);//第二个参是控制每多少个换行的,
}
return 0;
}
by PanDaoxi @ 2022-09-05 14:41:53
早期我的程序是这样的:
// Author:PanDaoxi
#include <iostream>
using namespace std;
int a[40201];
int main(){
int n,m,text=1,tmp=1,t;
cin>>m;
while(cin>>n){
text-=1,text*=-1;
t=tmp,tmp+=n;
for(int i=t;i<tmp;i++){
a[i]=text;
}
}
for(int i=1;i<=m*m;i++){
cout<<a[i];
if(i%m==0) cout<<endl;
}
return 0;
}
加油,你能过的
by bk492511 @ 2022-09-05 19:23:05
@PanDaoxi 前辈之言,我必将砥砺奋进
by PanDaoxi @ 2022-09-06 08:02:11
@bk492511 az,我也是一个蒟蒻……一起加油叭~
by 冰颜布偶喵 @ 2022-09-11 13:41:26
#include<iostream>
using namespace std;
int n;
int a,ans=0,k=0;
int main()
{
cin>>n;
while(cin>>a)
{
for(int i=a;i>=1;i--)
{
k++;
cout<<ans;
if(k==n)
{
cout<<"\n";
k=0;
}
}
ans=1-ans;//变换输出的“0”||“1”
}
return 0;
}
这是我的