Broken Keyboard (a.k.a. Beiju Text) UVA

来源:互联网 发布:excel数据有效性的来源 编辑:程序博客网 时间:2024/04/30 10:49

问题类型:STL-List

03pie’s solution for [UVA-11988]:
问题链接

#include<cstdio>#include<cstring>const int maxn=1000000+5;int last,cur,next[maxn];char s[maxn];int main(){    while(scanf("%s",s+1)==1){        int n=strlen(s+1);        last=cur=0;        next[0]=0;        for(int i=0;i<=n;i++){            char ch=s[i];            if(ch=='[') cur=0;            else if(ch==']') 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;}
0 0
原创粉丝点击