dfs,用全局数组和变量保存并更新当前状态。

答案可以直接在搜索结束时打印,n为奇数时方案数为0。

acm.hdu.edu.cn/showproblem.php?pid=1016
 #include <cstdio>
#include <cstring> using namespace std; const int maxn = ;
int n;
int ans[maxn], k;
bool isprime[];
bool vis[]; void init(){
memset(isprime, , sizeof isprime);
isprime[] = isprime[] = ;
for(int i = ; i <= ; i += ){
bool ok = ;
for(int j = ; j * j <= i; j += ){
if(i % j == ){
ok = ;
break;
}
}
isprime[i] = ok;
}
memset(vis, , sizeof vis);
} void dfs(int u){
//finished num is u
if(u == n && isprime[ + ans[n - ]]){
printf("%d", ans[]);
for(int i = ; i < k; i++) printf(" %d", ans[i]);
printf("\n");
}
for(int i = ; i <= n; i++){
if(!vis[i] && isprime[i + ans[u - ]]){
vis[i] = ;
ans[k++] = i;
dfs(u + );
vis[i] = ;
--k;
}
}
} void solve(){
init();
k = ;
ans[k++] = ;
vis[] = ;
dfs();
} int main(){
int kase = ;
while(~scanf("%d", &n)){
printf("Case %d:\n", ++kase);
solve();
printf("\n");
}
return ;
}

hdu1016 Prime Ring Problem的更多相关文章

  1. HDU1016 Prime Ring Problem(DFS回溯)

    Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  2. Hdu1016 Prime Ring Problem(DFS) 2016-05-06 14:27 329人阅读 评论(0) 收藏

    Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  3. hdu1016 Prime Ring Problem(DFS)

    Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  4. hdu1016 Prime Ring Problem【素数环问题(经典dfs)】

    Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  5. HDU1016 Prime Ring Problem (回溯 + 剪枝)

    本文链接:http://www.cnblogs.com/Ash-ly/p/5398684.html 题意: 给你一个数字N(N <= 20),要求你把这N个数组成一个环,环内的数字不能重复,左右 ...

  6. Prime Ring Problem素数环(HDU1016)

    Prime Ring Problem 思路:先看成一条链,往里头填数,满足任意相邻两数和为质数(这可以打表预处理出40以内的所有质数,扩展的时候枚举),填完了后检查首尾是否满足条件.字典序可以采用扩展 ...

  7. UVA524 素数环 Prime Ring Problem

    题目OJ地址: https://www.luogu.org/problemnew/show/UVA524 hdu oj 1016:  https://vjudge.net/problem/HDU-10 ...

  8. uva 524 prime ring problem——yhx

      Prime Ring Problem  A ring is composed of n (even number) circles as shown in diagram. Put natural ...

  9. hdu 1016 Prime Ring Problem(DFS)

    Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

随机推荐

  1. Hanoi T note

    hanoi(n,x,y,z) { hanoi(n-1,x,z,y);//n-1 from x to y move(x,z);//x->z hanoi(n-1,y,x,z);//n-1 from ...

  2. java.util.concurrent包

    在JavaSE5中,JUC(java.util.concurrent)包出现了 在java.util.concurrent包及其子包中,有了很多好玩的新东西: 1.执行器的概念和线程池的实现.Exec ...

  3. HTML语言的一些元素(四)

    以下资料整理自网路 1.锚点是网页制作中超级链接的一种,又叫命名锚记.命名锚记像一个迅速定位器一样是一种页面内的超级链接,运用相当普遍. 英文名:anchor 使用命名锚记可以在文档中设置标记,这些标 ...

  4. Beyond Compare

    Beyond Compare是一个比较文件和文件夹的工具.  它可以帮助你找到并协调源代码.文件夹.图像和数据间的差异,即使包括zip文档中或者FTP站点上的文件.  另外它还可以同步化文件夹并验证不 ...

  5. tinyxml安装和使用

    下载: 官方文档:http://www.grinninglizard.com/tinyxmldocs/index.html 中文翻译:http://www.cnblogs.com/kex1n/arch ...

  6. 转:JAVA强制类型转换

    object对象转换为String的一些总结 ----------------------------------------------------------------------------- ...

  7. csuoj 1395: Timebomb

    http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1395 1395: Timebomb Time Limit: 1 Sec  Memory Limit ...

  8. adb devices 显示error

    1.adb kill-server 2.adb start-server

  9. JavaOOP项目 CMS内容管理系统

    数据库里创建一个News表,要有标题.作者.时间.内容等列. 1:首先要使用JDBC进行数据库连接,得先在项目里新建一个Folder,把Sqlserver 的驱动jar包导入. 2:使用MyEclip ...

  10. Cookie—的使用

    编写 Cookie 浏览器负责管理用户系统上的 Cookie.Cookie 通过 HttpResponse 对象发送到浏览器,该对象公开称为 Cookies 的集合. 可以将 HttpResponse ...