问题标题: 酷町堂:2866 字符串压缩2

0
0
已解决
李牧晓
李牧晓
中级天翼
中级天翼

题目描述 Description

给出一个全部由小写字母组成的字符串。为了将这个字符串存储起来,并且尽可能地节省空间,现在将多个连续出现的相同字母,改写成这个字母最长的连续的个数后面跟上这个字母本身的形式。比如"…baaaaac…“这个部分可以改写成”…1b5a1c…"。给出一个字符串,试着输出经压缩的结果。

输入描述 Input Description

一个字符串,仅由小写字母组成

输出描述 Output Description

经压缩后的字符串

样例输入 Sample Input

baaaaac

样例输出 Sample Output

1b5a1c

--------------------------------------------------------------------------

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
string s; 
int b[1000000];
int main()
{
	cin>>s; 
	for(int i=0;i<s.size();i++){ 
		b[i]=1; 
		if(s[i]==s[i-1]){
			b[i]=b[i-1]+1; 
		} 
	}
	for(int i=0;i<s.size();i++){ 
		if(b[i]==b[i-1]+1&&b[i+1]-1!=b[i]&&b[i]>1){ 
			cout<<s[i]<<b[i]; 
			continue; 
		}
		if(s[i]!=s[i+1]) cout<<s[i]; 
	}
    return 0;
}

样例都过不了的代码,求找错

李牧晓在2021-12-25 00:01:06追加了内容

已完成,有人帮忙回答一下吗


0
0
0
我要回答