A Breaking Computer
题目:
参考了网上的代码才ac了,尝试了用string来做,但是TLE了,做了我n久的,桑心死了,基础很重要啊。
1 include2 #include 3 #include 4 using namespace std; 5 #define MAXN 200000 6 7 char ht[MAXN+10]; 8 vector ans[MAXN+10]; 9 10 int main()11 {12 while(~scanf("%s",ht))13 {14 int i,r,kar;15 for(i=0;i =0;i--)36 {37 for(int j=0;j
1 #include2 #include 3 #include 4 #include 5 using namespace std; 6 #define MAXN 200000 7 8 char ht[MAXN+10]; 9 10 int main()11 {12 string str1,str2,str3;13 while(~scanf("%s",ht))14 {15 str1 = ht;16 int a=0,b=0,c=0;17 a = str1.find('[',b);18 if(a==string::npos)19 {20 printf("%s\n",str1.c_str());21 continue;22 }23 while(a!=string::npos)24 {25 str2.append(str1,b,a-b);26 c = str1.find(']',b);27 if(c==string::npos) c = str1.length();28 str3.assign(str1,a+1,c-a-1);29 str2 = str3 + str2 ;30 b = c+1;31 a = str1.find('[',b);32 }33 if(c!=str1.length())34 {35 c = str1.length();36 str2.append(str1,b,c);37 }38 printf("%s\n",str2.c_str());39 str1.clear();40 str2.clear();41 }42 return 0;43 }