Ice_teapoy @ 2017-06-27 08:55:34
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
int l;
char a[201];
int n=0;
int v[201];
int x=0;
char j='0';
void aa()
{
int i=0;
while (i<l)
{
while (a[i]==j)
{
x++;
i++;
}
if (i<=l-1)
{
n++;
v[n]=x;
if (j=='0') j='1';
else j='0';
x=1;
}
i++;
}
}
int main()
{
//freopen("aa.txt","r",stdin);
//freopen("aa.out","w",stdout);
gets(a);
v[0]=strlen(a);
l=strlen(a);
int k;
aa();
for (k=1;k<l;++k)
{
char b;
gets(a);
aa();
}
n++;
v[n]=x;
for (int i=0;i<=n;++i) cout<<v[i]<<" ";
//fclose(stdin);
//fclose(stdout);
}
by Ice_teapoy @ 2017-06-27 08:55:56
求助
by Tsukimaru @ 2017-07-28 15:31:37
别用gets,这一道题不用gets。
by 览遍千秋 @ 2017-08-15 10:06:12
洛谷评测环境是Linux,换行符与Windows不同,数据在Windows下生成,而你的程序在Linux环境下编译,导致依赖于换行符的gets出错