LeetCode #38

Count and Say

1개의 풀이 · C++

문제 원문 보기 ↗

SOLUTION INFO

C++ · main.cpp

main.cpp
class Solution {
public:
    string countAndSay(int n) {
        string ans = "1";
        for(int i = 1; i < n; ++i) {
            string nxt = "";
            int cnt = 1;
            char pre = ans[0];
            for(int j = 1; j < (int)ans.size(); ++j) {
                if(pre == ans[j]) ++ cnt;
                else {
                    nxt += to_string(cnt);
                    nxt += pre;
                    cnt = 1;
                }
                pre = ans[j];
            }
            if(cnt) {
                nxt += to_string(cnt);
                nxt += pre;
            }
            swap(ans, nxt);
        }
        return ans;
    }
};

SOLUTION DESCRIPTION

풀이 설명

등록된 풀이 설명이 없습니다.