hdu 1016 Prime Ring Problem
2014-11-20 16:56
197 查看
这是一个搜索的题目,大意是让你输入一个0~20的整数n,这样你就有1,2,3,.......,n这些数,将它们围成一个·环,要求相邻两个数,代码如下:
的和是素数,输出所有的组合
#include<iostream> #include<cstring> using namespace std; int print(int a[],int n) { int i; for (i=0;i<n;i++) { if(i==n-1) cout<<a[i]<<endl; else cout<<a[i]<<' '; } return 0; } int prime(int num) { int i; for(i=2;i<=num/2;i++) { if(num%i==0) return 0; } return 1; } void dfs(int a[],int uset[],int n,int len) { if(len==n) { if(prime(a[0]+a[n-1])) print(a,n); } else { int i; for(int i=2;i<=n;i++) { if(uset[i]==0&&prime(a[len-1]+i)) { a[len]=i; uset[i]=1; dfs(a,uset,n,len+1); uset[i]=0; } } } } int main() { int n,t=1; while(cin>>n) { int uset[25],a[25]={1}; cout<<"Case "<<t<<":"<<endl; t++; memset(uset,0,sizeof(uset)); dfs(a,uset,n,1); cout<<endl; } return 0; }
的和是素数,输出所有的组合
相关文章推荐
- HDU 1016 Prime Ring Problem
- 搜索专题(DFS)HDU 1016-Prime Ring Problem
- HDU-1016-Prime Ring Problem
- hdu 1016 Prime Ring Problem
- hdu 1016 Prime Ring Problem(dfs)
- HDU - 1016 Prime Ring Problem
- hdu1016 prime ring problem
- HDU 1016 && Uva 524 Prime Ring Problem(素数环)
- hdu 1016 Prime Ring Problem
- HDU-1016 Prime Ring Problem
- HDU 1016 Prime Ring Problem --- 经典DFS
- hdu 1016 Prime Ring Problem
- HDU 1016 Prime Ring Problem
- 【暴力搜索】[HDU 1016]Prime Ring Problem
- HDU 1016 - Prime Ring Problem (DFS)
- HDU 1016 Prime Ring Problem
- hdu 1016 Prime Ring Problem
- hdu 1016 Prime Ring Problem (DFS)
- HDU 1016 Prime Ring Problem(dfs)
- hdu 1016 Prime Ring Problem(dfs)