1. 描述
输入一串字符,编写一个字符串压缩程序,将字符串中连续出现的重复字母进行压缩,并输出压缩后的字符串。
例如:
aac 压缩为 1ac
aaacca 压缩为 2a1ca
2. 代码
#include <iostream>
#include <string>
using namespace std;
string compresses(const string & inputString){
string res = "";
int len = inputString.size();
int count = 0;
for(int i = 0; i < len; i++){
if(inputString[i + 1] == inputString[i]){
count++;
}
else{
if(count == 0){
res += inputString[i];
}else{
res += to_string(count);
res += inputString[i];
}
count = 0;
}
}
return res;
}
int main(){
// string input = "aaacca";
string input = "aac";
string res = compresses(input);
cout << "res:" << res << endl;
return 0;
}
3. 结果
res:1ac