60求条

P1320 压缩技术(续集版)

I_AM_ACer @ 2024-09-13 22:16:45

这道题不明不白地拿了60分,蒟蒻不知道该怎么改,求大佬帮忙调调

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=100005;
int a[N];
inline int read()
{
    int x=0,f=1;
    char ch=getchar();
    while(ch<'0'||ch>'9')
    {
        if(ch=='-')
        {
            f=-1;   
        }
        ch=getchar();
    }
    while(ch>='0'&&ch<='9')
    {
        x=x*10+ch-'0',ch=getchar();
    }
    return x*f;
}
signed main()
{
    ios::sync_with_stdio(false);
    cin.tie(0),cout.tie(0);
    int cnt=1;
    string n;
    while(cin>>n)
    {
        for(int i=0;i<n.size();i++)
        {
            a[cnt]=n[i]-'0';
            cnt++;
        }
    }
    cout<<sqrt(cnt-1)<<" ";
    int sum=0;
    for(int i=1;i<=cnt;i++)
    {
        if(a[i]!=a[i-1])
        {
            cout<<sum<<" ";
            sum=1;
        }
        else
        {
            sum++;
        }
    }
    return 0;
}

提交记录


by lgshuang @ 2024-09-13 22:43:38

在代码后加入

if(sum != 1){
    cout << sum - 1;
}

即可 (你是不是忘了处理结尾输出)


by I_AM_ACer @ 2024-09-14 21:18:04

@lgshuang 感谢,大佬orz


|