UVA-11988: Broken Keyboard (a.k.a. Beiju Text)(我的第一個連結串列)
阿新 • • 發佈:2019-01-26
ORZ:這道題當真是隻可遠觀不能褻玩啊 以後再懂吧#include<stdio.h> #include<iostream> #include<string> #include<stack> #include<string.h> using namespace std; int last,cur,next[100005]; char s[100005]; int main() { while(scanf("%s",s+1)!=EOF) { int len=strlen(s+1); last=cur=0; next[0]=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; }