程式語言 - LeetCode - C++ - 38. Count and Say



參考資訊:
https://www.cnblogs.com/grandyang/p/4086299.html

題目:


解答:

class Solution {
public:
    string countAndSay(int n) {
        string r = "1";

        while (--n) {
            string t;

            for (int i = 0; i < r.size(); ++i) {
                int cnt = 1;

                while (((i + 1) < r.size()) && (r[i] == r[i + 1])) {
                    cnt += 1;
                    i += 1;
                }

                t += to_string(cnt) + r[i];
            }

            r = t;
        }

        return r;
    }
};