WEI-CHENG CHEN

說明

RLE 是一種壓縮編碼

“3322251”視為兩個 3,三個 2,一個 5,一個 1,因此會壓縮成 “23321511”

題目給的側資 1:

解題

class Solution {
public:
    string countAndSay(int n) {
        string ans = "1";
        if(n==1) return ans;
        for(int i=1;i<n;i++){
            string s = "";
            // 紀錄連續數字
            int left=0, right=0;
            // 描述当前字符串
            while(right<ans.size()){
                while(ans[left]==ans[right]) right++;
                // 更新紀錄
                s +=to_string(right-left)+ans[left];
                left = right;
            }
            ans = s;
        }
        return ans;
    }
};