题目链接:https://leetcode.cn/problems/decode-string/
题意:
嵌套递归
class Solution {
public:
int where;
string repeat(string path,int cnt)
{
string ans="";
for(int i=1;i<=cnt;i++)
{
ans+=path;
}
return ans;
}
string decodeString(string s) {
where=0;
return f(s,0);
}
string f(string s,int i)
{
string path="";
int cnt=0;
while(i<s.size()&&s[i]!=']')
{
if(isalpha(s[i]))path+=s[i++];
else if(isdigit(s[i]))cnt=cnt*10+(s[i++]-'0');
else
{
path+=repeat(f(s,i+1),cnt);
i=where+1;
cnt=0;
}
}
where=i;
return path;
}
};
标签:string,递归,int,解码,字符串,题意
From: https://www.cnblogs.com/benscode/p/18665741