总的思路就是递归里写循环。主要这有一个递归的关系。
class Solution {
public:
// 递归
string countAndSay(int n) {
if(n == 1){
return "1";
}
string previous = countAndSay(n-1);
string result = "";
int count = 1;
for(int i = 0; i < previous.length(); i++){
if(previous[i] == previous[i+1]){
count++;
}
else{
result += to_string(count) + previous[i];
count = 1;
}
}
return result;
}
};