原题链接:https://leetcode.com/problems/decode-string/
string decodeString(string s) {
int n = s.size(), i;
string res;
for (i = 0; i < n;) {
if (!isdigit(s[i])) {
res += s[i ++ ];
} else {
int k = 0, j = i;
while (isdigit(s[j])) {
k = k * 10 + s[j ++ ] - '0';
}
i = j + 1;
int sum = 1;
while (sum > 0) {
if (s[i] == ']') sum -- ;
if (s[i] == '[') sum ++ ;
i ++ ;
}
string r = decodeString(s.substr(j + 1, i - j -2));
while (k -- ) res += r;
}
}
return res;
}