码迷,mamicode.com
首页 > 其他好文 > 详细

[ An Ac a Day ^_^ ] FZU 2030 括号问题 搜索

时间:2016-08-23 23:19:49      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:

 

 1 #include<stdio.h>
 2 #include<iostream>
 3 #include<algorithm>
 4 #include<math.h>
 5 #include<string.h>
 6 #include<string>
 7 #include<map>
 8 #include<set>
 9 #include<vector>
10 #include<queue>
11 #define M(a,b) memset(a,b,sizeof(a))
12 using namespace std;
13 typedef long long ll;
14 char s[20];
15 int l,ans;
16 void dfs(int len,int mat){
17     if(len==l&&mat==0){
18         ans++;
19         return ;
20     }
21     if(len==l&&mat!=0) return ;
22     if(s[len]==() dfs(len+1,mat+1);
23     if(s[len]==)) dfs(len+1,mat-1);
24     if(s[len]==?){
25         dfs(len+1,mat+1);
26         dfs(len+1,mat-1);
27     }
28 }
29 
30 int main(){
31     while(gets(s)){
32         l=strlen(s);
33         ans=0;
34         dfs(0,0);
35         printf("%d\n",ans);
36     }
37     return 0;
38 }
39 /*
40 
41 ((??))
42 
43 */

 

 

 1 #include<stdio.h>
 2 #include<iostream>
 3 #include<algorithm>
 4 #include<math.h>
 5 #include<string.h>
 6 #include<string>
 7 #include<map>
 8 #include<set>
 9 #include<vector>
10 #include<queue>
11 #define M(a,b) memset(a,b,sizeof(a))
12 using namespace std;
13 typedef long long ll;
14 char s[20];
15 int l,ans,cnt,num;
16 int main(){
17     while(gets(s)){
18         l=strlen(s);
19         ans=0;
20         cnt=0;
21         num=0;
22         for(int i=0;i<l;i++){
23             if(s[i]==() cnt++;
24             if(s[i]==)) cnt--;
25             if(s[i]==?) num++;
26         }
27         num-=cnt;
28         printf("%.0lf\n",pow(2,num/2));
29     }
30     return 0;
31 }
32 /*
33 
34 ((??))
35 
36 */

 

[ An Ac a Day ^_^ ] FZU 2030 括号问题 搜索

标签:

原文地址:http://www.cnblogs.com/general10/p/5801043.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!