题解 | #基本字符串压缩#
基本字符串压缩
http://www.nowcoder.com/practice/21f3a84300c94db092e0b5a7bf2d0ad1
class Zipper {
public:
string zipString(string s) {
// write code here]
const int n = s.size();
vector<int> res(n,1);
for(int i = n - 2; i >= 0; i--) if(s[i] == s[i + 1]) res[i] += res[i + 1];
string rs = "";
for(int i = 0; i < n; i += res[i]){
if(i >= n) break;
rs += s[i] + to_string(res[i]);
}
return rs.size() < n ? rs : s;
}
};
static const auto speedup = []{
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
return nullptr;
}();