HDU-1016(第一道DFS)
2016-02-24 12:20
375 查看
#include<iostream> #include<cstdio> #include<stack> void dfs(int depth,int biao[],int sum[]); bool pdss(int a) ; int gong,num=1; using namespace std; int main() { while(scanf("%d",&gong)!=EOF) { int z,biao[21]; biao[1]=0; for(z=2;z<=gong;z++){biao[z]=1;} int sum[21]; sum[1]=1; for(z=2;z<=gong;z++){sum[z]=0;} printf("Case %d:\n",num); dfs(1,biao,sum); num++; printf("\n"); } return 0; } void dfs(int depth,int biao[],int sum[]) { if(depth==gong) { int r; if(pdss(sum[1]+sum[depth])) { int z; for(z=1;z<=depth;z++) { if(z<=depth-1) {printf("%d ",sum[z]);} else{printf("%d\n",sum[z]);} } } return; } int i; for(i=2;i<=gong;i++) { if(pdss(sum[depth]+i)) { if(biao[i]!=0) { biao[i]=0; sum[depth+1]=i; dfs(depth+1,biao,sum); biao[i]=1; sum[depth+1]=0; } } } return; } bool pdss(int a) //判断是否是素数 { int i; for(i=2;i<=a/2;i++) { if(a%i==0){return false;} } {return true;} }
相关文章推荐
- HTTP请求报文和HTTP响应报文
- 在Android里面使用正则有性能隐患
- 程序员面试题精选100题(58)-八皇后问题[算法]
- 程序员面试题精选100题(59)-字符串的组合[算法]
- PHP 5.3 ereg() 无法正常使用,提示“Function ereg() is deprecated Error
- 程序员面试题精选100题(57)-O(n)时间的排序[算法]
- 程序员面试题精选100题(56)-C/C++/C#面试题(4)
- iOS新技术
- Android Studio Shortcut on MAC
- POJ 1703 Find them, Catch them (数据结构-并查集)
- iOS开发-graphics
- 【架构】如何设计支持多租户的数据库?
- 程序员面试题精选100题(55)-不用+、-、×、÷做加法[算法]
- 提交到AppStore时失败,提交审核时提示:UIRequiredDeviceCapabilities
- 程序员面试题精选100题(54)-C++/C#面试题(3)
- 《转》PyQt之自定义无边框窗口遮盖任务栏显示问题
- 程序员面试题精选100题(53)-C++/C#面试题(2)
- 提交到AppStore时失败,提交审核时提示:UIRequiredDeviceCapabilities
- 250,下拉刷新,上拉刷新效果
- mybatis如何获取oracle新插入数据记录的主键?