标签:des style blog color io os ar java for
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 832 Accepted Submission(s): 569
1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #include <iostream> 5 #include <vector> 6 #include <queue> 7 using namespace std; 8 9 char s[40], a[40]; 10 int ans; 11 12 void dfs(int l,int r,int id,int f){ 13 int i, j, k; 14 if(l>r){ 15 // a[id]=s[strlen(s)-1]; 16 int ff=0, num1, num2, num3, num4; 17 num1=num2=num3=num4=0; 18 19 for(i=0;i<id;i++){ 20 if(a[i]>=‘0‘&&a[i]<=‘9‘){ 21 if(!ff) 22 num2=num2*10+a[i]-‘0‘; 23 else num3=num3*10+a[i]-‘0‘; 24 } 25 else if(a[i]==‘+‘){ 26 if(!ff){ 27 num1+=num2; 28 num2=0; 29 } 30 else { 31 num4+=num3;num3=0; 32 } 33 } 34 else if(a[i]==‘=‘){ 35 ff=1; 36 } 37 } 38 if(num2!=0) num1+=num2; 39 if(num3!=0) num4+=num3; 40 if(num1==num4&&num1!=0){ 41 ans++;//for(i=0;i<id;i++) printf("%c",a[i]); 42 //cout<<endl<<endl; 43 } 44 return; 45 } 46 a[id++]=s[l]; 47 dfs(l+1,r,id,f); 48 id--; 49 if(a[id-1]!=‘+‘&&id!=0&&a[id-1]!=‘=‘&&l<=r){ 50 a[id++]=‘+‘; 51 dfs(l,r,id,f); 52 id--; 53 } 54 55 if(!f&&id!=0&&a[id-1]!=‘+‘&&l<=r){ 56 a[id++]=‘=‘;f=1; 57 dfs(l,r,id,f); 58 f=0;id--; 59 } 60 } 61 main() 62 { 63 int i, j, k; 64 while(scanf("%s",&s)!=EOF&&strcmp(s,"END")){ 65 j=strlen(s); 66 ans=0; 67 dfs(0,j-1,0,0); 68 printf("%d\n",ans); 69 } 70 }
标签:des style blog color io os ar java for
原文地址:http://www.cnblogs.com/qq1012662902/p/4038535.html