求助!!!试了很多次都对,可是全wa

P1320 压缩技术(续集版)

BZHZS @ 2020-12-25 18:15:29

#include<bits/stdc++.h>

#include<cstdio>
#include<cstdlib>
#include<iostream>
using namespace std;

char a[201];
int n;
int cao[1002],can=1;
char flag='0';

int main()
{
    gets(a);
    n=strlen(a);
    for(int i=0; i<n; i++)
    {
        if(a[i]==flag)
            cao[can]++;
        else
        {
            can++;
            cao[can]=1;
            if(flag=='1')
                flag='0';
            else
                flag='1';
        }
    }

    for(int i=2; i<=n; i++)
    {
        gets(a);
        for(int i=0; i<n; i++)
        {
            if(a[i]==flag)
                cao[can]++;
            else
            {
                can++;
                cao[can]=1;
                if(flag=='1')
                    flag='0';
                else
                    flag='1';
            }
        }
    }

    cout<<n<<' ';
    for(int i=1;i<=can;i++)
        cout<<cao[i]<<' ';

    return 0;
}

by wsyhb @ 2020-12-25 18:29:33

@BZHZS 不要用在不同环境下会有差异的字符串函数。将 gets(a) 改为 scanf("%s",a) 即可 AC。

我已经看到过十几个帖因为 gets() 而无法 AC 了


by BZHZS @ 2020-12-25 18:32:47

@wsyhb 谢谢大佬


by 1122334455l @ 2021-01-27 15:41:37

@wsyhb 谢谢大佬!


|