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;
}
};