HDU 1016 Prime Ring Problem
2014-02-10 10:32
302 查看
简单DFS
#include <cstdio> bool used[21]; bool prim[41]; int now[21]; int i,j,n; void out() { printf("1"); for(int i=2;i<=n;i++) printf(" %d",now[i]); printf("\n"); } void dfs(int step) { if (step==n&&prim[now +1]) out();//注意是==,=导致WA for(int i=2;i<=n;i++) if ((!used[i])&&(prim[i+now[step]])) { used[i]=true; now[step+1]=i; dfs(step+1); used[i]=false; } } int main() { int cnt=1; for (int i=2;i<21;i++)used[i]=false; for (int i=1;i<41;i++)prim[i]=true; for(int i=2;i<41;i++) { if(!prim[i]) continue; for(int j=2*i; j<41; j+=i)prim[j]=false; } now[1]=1; used[1]=true; while(scanf("%d",&n)!=EOF) { printf("Case %d:\n",cnt++); dfs(1); puts(""); } }
相关文章推荐
- 【dfs】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(深度优先搜索)
- HDU 1016 (Prime Ring Problem)
- HDU 1016 Prime Ring Problem
- 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(巨水、、竟被PE虐,后而编程WA。怒之!!!)】
- HDOJ(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(回溯法求解)