#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=100000+5;
char s[maxn];
int Next[maxn];
int main()
{
while(scanf("%s",s+1)!=EOF)
{
int len=(int)strlen(s+1);
Next[0]=0;
int cur=0,last=0;
for(int i=1;i<=len;i++)
{
if(s[i]=='[') cur=0;
else if(s[i]==']') cur=last;
else{
Next[i]=Next[cur];
Next[cur]=i;
if(cur==last) last=i;
cur=i;
}
}
for(int i=Next[0];i!=0;i=Next[i]) printf("%c",s[i]);printf("\n");
}
return 0;
}
UVA 11988 Broken Keyboard (a.k.a. Beiju Text)(数组模拟链表)
最新推荐文章于 2023-03-25 17:36:39 发布