#include <bits/stdc++.h>
using namespace std;
string s;
int f(int i) {
if (i >= s.size())
return s.size();
string tmp = "";
while (s[i] >= 'A' && s[i] <= 'Z') {
tmp += s[i];
i++;
}
cout << tmp;
if (s[i] == '[') {
i++;
int num = 0;
while (s[i] >= '0' && s[i] <= '9') {
num = num * 10 + (s[i] - '0');
i++;
}
num = (num == 0) ? 1 : num;
for (int j = 1; j <= num - 1; j++)
f(i);
i = f(i);
return f(i);
} else
return i + 1;
}
int main() {
cin >> s;
f(0);
return 0;
}
洛谷1928题解小记
于 2024-12-18 21:32:12 首次发布
1930

被折叠的 条评论
为什么被折叠?



