class Solution {
public:
string doit(int &i,string &s)
{
string s1;
if(i>=s.size()) return s1;
for(;i<s.size();++i)
{
if((s[i]>='a'&&s[i]<='z')||(s[i]>='A'&&s[i]<='Z'))
{
s1+=s[i];
}else if(s[i]==']'){
break;
}else if(s[i]>='0'&&s[i]<='9')
{
int count(0);
while(s[i]!='[')
{
count*=10;
count+=s[i]-'0';
++i;
}
++i;
string s3=doit(i,s);
while(count--)
{
s1+=s3;
}
}
}
return s1;
}
string decodeString(string s) {
int i=0;
return doit(i,s);
}
};
leetcode - 394. Decode String
最新推荐文章于 2022-06-26 22:43:42 发布