题目来源
- leetcode
题目描述
题目解析
class Solution {
public:
string compressString(string s) {
std::string ans;
int n = s.size();
if(n == 0){
return ans;
}
char pre = s[0]; int cnt = 1;
for (int i = 1; i < n; ++i) {
if(s[i] != pre){
ans.push_back(pre);
ans.append(std::to_string(cnt));
pre = s[i]; cnt = 1;
}else{
++cnt;
}
}
ans.push_back(pre);
ans.append(std::to_string(cnt));
return ans.size() < n ? ans : s;
}
};