Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:题目都不同In Reply To:different result on different OJ Posted by:Analgesic at 2009-08-19 09:22:52 > ZOJ: WA > POJ: AC > > Is the test data different or the check program different? > > this is my submit: > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > #include <cstdio> > #include <cstring> > #include <string> > #include <iostream> > #define MAXL 100 > using namespace std; > int opt[MAXL+1][MAXL+1]; > string text; > string opt_str[MAXL+1][MAXL+1]; > > int solve(int s,int l){ > int min=2e9,temp; > string min_str; > if(opt[s][l]!=-1) return opt[s][l]; > if(text[s]=='('&&text[s+l-1]==')' || text[s]=='['&&text[s+l-1]==']'){ > temp=solve(s+1,l-2); > if(temp<min){ > min=temp; > if(text[s]=='(') > min_str="("+opt_str[s+1][l-2]+")"; > else > min_str="["+opt_str[s+1][l-2]+"]"; > } > } > if(text[s]=='('){ > temp=solve(s+1,l-1)+1; > if(temp<min){ > min=temp; > min_str="("+opt_str[s+1][l-1]+")"; > } > } > if(text[s]=='['){ > temp=solve(s+1,l-1)+1; > if(temp<min){ > min=temp; > min_str="["+opt_str[s+1][l-1]+"]"; > } > } > if(text[s+l-1]==')'){ > temp=solve(s,l-1)+1; > if(temp<min){ > min=temp; > min_str="("+opt_str[s][l-1]+")"; > } > } > if(text[s+l-1]==']'){ > temp=solve(s,l-1)+1; > if(temp<min){ > min=temp; > min_str="["+opt_str[s][l-1]+"]"; > } > } > for(int i=1;i<l;++i){ > temp=solve(s,i)+solve(s+i,l-i); > if(temp<min){ > min=temp; > min_str=opt_str[s][i]+opt_str[s+i][l-i]; > } > } > opt[s][l]=min; > opt_str[s][l]=min_str; > return min; > } > void init(){ > memset(opt,-1,sizeof(opt)); > for(int i=0;i<=text.length();++i){ > opt[i][0]=0; > opt_str[i][0]=""; > } > } > int main(){ > char buffer[MAXL+2]; > while(fgets(buffer,MAXL+2,stdin)){ > text=string(buffer,buffer+strlen(buffer)-1); > if(buffer[0]=='\n'){ > cout<<endl; > continue; > } > init(); > solve(0,text.length()); > cout<<opt_str[0][text.length()]<<endl; > } > return 0; > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator