字符串擦除字符并压缩

Posted zhangjs73

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串擦除字符并压缩相关的知识,希望对你有一定的参考价值。

题目描述 Description

给出一个全部由小写字母和数字组成的字符串。请先将这个字符串中的数字全部擦除。然后为了将这个字符串存储起来,并且尽可能地节省空间,现在将多个连续出现的相同字母,改写成这个字母本身后面跟上最长的连续的个数的形式。比如"...baaaaac..."这个部分可以改写成"...ba5c..."(连续出现的个数可能会超过10个)。如果字符一个个单独出现,则不需要压缩。给出一个 字符串,试着输出经处理的结果。

输入描述 Input Description

一行,一个字符串,含有小写字母和数字

输出描述 Output Description

处理之后的字符串的结果

样例输入 Sample Input

aaaaaa5bbbb323b2g

样例输出 Sample Output

a6b5g

 

 1 #include <iostream>
 2 #include <string.h>
 3 #include <cstdio>
 4 
 5 using namespace std;
 6 
 7 char s[1000],t[1000];
 8 int main()
 9 {
10     gets(t);
11     int j=0,k=0,cnt;
12     for(int i=0;i<strlen(t);i++)
13     {
14         if(t[i]>=a&&t[i]<=z)
15         {
16             s[j]=t[i];
17             j++;
18         }
19     }
20     while(s[k]!=)
21     {
22         cnt = 1;
23         cout<<(s[k]);
24         k++;
25         while(s[k]==s[k-1])
26         {
27             cnt++;
28             k++;
29         }
30         if(cnt>1)
31             cout<<(cnt);
32     }
33 
34     return 0;
35 }

 

以上是关于字符串擦除字符并压缩的主要内容,如果未能解决你的问题,请参考以下文章

1078. 字符串压缩与解压 (20)

使用字符串擦除()和字符串长度()从字符串中删除某些字符

在fabric js中擦除iText时显示光标线代替擦除的字符

PAT Basic 1078

stl中字符串中的擦除关键字的工作?

擦除粒子文本时如何加载下一个字符串?