题解 | #基本字符串压缩#

基本字符串压缩

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;
}();
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务