字符压缩题目,
class Solution {
public:
int compress(vector<char>& chars) {
int ii = 0;
int count = 1;
char now = chars[0];
vector<char> res1;
vector<int> res2;
for (int ii=1;ii<chars.size();ii++){
if (chars[ii]==now){
count ++;
}
else{
res1.push_back(now);
res2.push_back(count);
now = chars[ii];
count = 1;
}
}
res1.push_back(now);
res2.push_back(count);
// print
chars.clear();
for(int i=0;i<res1.size();i++){
char s1 = res1[i];
chars.push_back(s1);
int s2 = res2[i];
if (s2 > 1){
string s22 = to_string(s2);
for (int jj=0;jj<s22.size();jj++){
chars.push_back(s22[jj]);
}
}
}
return chars.size();
}
};