class Solution {
public:
string countAndSay(int n) {
string s="1";
if(n==1)
return s;
string res;
n--;
while(n--)
{
res.clear();
helper(s,res);
s=res;
}
return res;
}
void helper(string s,string& res){
if(s.empty())
return;
int sum=1,i;
for(i=1;i<s.size();i++)
{
if(s[i]!=s[0])
break;
sum++;
}
res.push_back(sum+'0');
res.push_back(s[0]);
helper(s.substr(i),res);
}
};
leetcode 38: Count and Say
最新推荐文章于 2019-08-27 14:32:27 发布