1 #include <iostream>
2 #include <cstring>
3 #include <cstdlib>
4
5 using namespace std;
6
7 struct Node
8 {
9 char c;
10 Node* next;
11 Node(){next=NULL;}
12 };
13
14 char arr[100000];
15
16 int main()
17 {
18 while(cin>>arr)
19 {
20 int len=strlen(arr);
21 Node* head=new Node();
22 Node* cur=head;
23 Node* last=head;
24 for(int i=0;i<len;i++)
25 {
26 if(arr[i]=='[')
27 {
28 cur=head;
29 }
30 else if(arr[i]==']')
31 {
32 cur=last;
33 }
34 else
35 {
36 Node* a=new Node();
37 a->c=arr[i];
38 a->next=cur->next;
39 cur->next=a;
40 if(last==cur)
41 {
42 last=a;
43 last->next=NULL;
44 }
45 cur=a;
46 }
47 }
48 Node* t=head->next;
49 while(t!=NULL)
50 {
51 cout<<(*t).c;
52 t=t->next;
53 // system("pause");
54 }
55 cout<<endl;
56 }
57 return 0;
58 }