HDU(1016),打素数环
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016
哈哈,状态来了就是不一样,很快就A了。
注意的位置是,最后一个点,要与第一个点比较。
- #include <stdio.h>
- #include <string.h>
- int prime[]= {}; ///是素数就是0
- bool vis[];
- int ans[];
- int n;
- void dfs(int k)
- {
- //printf("%d\n",k);
- if(k==n+)
- {
- for(int i=; i<n; i++)
- printf("%d ",ans[i]);
- printf("%d\n",ans[n]);
- return ;
- }
- else if(k==n)
- {
- for(int i=; i<=n; i++)
- {
- if(!vis[i]&&!prime[ans[k-]+i]&&!prime[i+ans[]])
- {
- ans[k] = i;
- vis[i]=true;
- dfs(k+);
- vis[i] = false;
- }
- }
- }
- else
- {
- for(int i=; i<=n; i++)
- {
- if(!vis[i]&&!prime[ans[k-]+i])
- {
- ans[k] = i;
- vis[i]=true;
- dfs(k+);
- vis[i] = false;
- }
- }
- }
- }
- int main()
- {
- ///打出40个素数来
- for(int i=; i<; i++)
- if(!prime[i])
- for(int j=i*i; j<; j+=i)
- prime[j] = ;
- /*for(int i=2; i<=45; i++)
- {
- if(!prime[i])
- printf("%d ",i);
- }
- puts("");*/
- int Case = ;
- while(scanf("%d",&n)!=EOF)
- {
- memset(vis,false,sizeof(vis));
- memset(ans,,sizeof(ans));
- printf("Case %d:\n",Case++);
- ans[] = ;
- vis[] = true;
- dfs();
- puts("");
- }
- return ;
- }
HDU(1016),打素数环的更多相关文章
- HDU 1016 素数环(dfs + 回溯)
嗯... 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016 一道很典型的dfs+回溯: 根据题意首先进行初始化,即第一个位置为1,然后进行dfs, ...
- HDU - 1016 Prime Ring Problem 经典素数环
Prime Ring Problem A ring is compose of n circles as shown in diagram. Put natural number 1, 2, ..., ...
- [HDU 1016]--Prime Ring Problem(回溯)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016 Prime Ring Problem Time Limit: 4000/2000 MS (Jav ...
- HDOJ(HDU).1016 Prime Ring Problem (DFS)
HDOJ(HDU).1016 Prime Ring Problem (DFS) [从零开始DFS(3)] 从零开始DFS HDOJ.1342 Lotto [从零开始DFS(0)] - DFS思想与框架 ...
- hdu 1016 Prime Ring Problem(DFS)
Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- one recursive approach for 3, hdu 1016 (with an improved version) , permutations, N-Queens puzzle 分类: hdoj 2015-07-19 16:49 86人阅读 评论(0) 收藏
one recursive approach to solve hdu 1016, list all permutations, solve N-Queens puzzle. reference: t ...
- hdu 1016
这是一道考搜索的题目.这道题我用深搜解决了,不过说实话自己对于深搜理解得并不深刻,在这里对于这一题总结一下. 这道题输入为一个实数n,要求输出有1~n这n个数所组成的所有素数环(这是素数环),素数环的 ...
- HDU 1016 Prime Ring Problem(经典DFS+回溯)
Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- nyoj 488 素数环
素数环 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 有一个整数n,把从1到n的数字无重复的排列成环,且使每相邻两个数(包括首尾)的和都为素数,称为素数环. 为了简 ...
随机推荐
- WIN2008R2 asp.net core的配置
配置IIS Windows Server上通过“添加角色和功能”,桌面Windows上通过“启用和关闭Windows功能”来安装和配置IIS.确保勾选Web服务和“IIS 管理控制台”: Window ...
- 汉诺塔问题hdu 2065——找规律
这类题目就是纸上模拟,找规律. 问题描述:在一块铜板上有三根杆,目的是将最左边杆上的盘全部移到右边的杆上,条件是不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间移出),也不允 ...
- java多线程-创建线程
大纲: Thread创建线程. Runnable接口. Callable接口. 小结 一.java创建线程--继承Thead类 创建一个类继承Thead类,并重写run方法. class Test { ...
- vue快速入门(二)
工程搭建完成,接下来如何使用. 首先找到src\rooter\index.js文件 这里是路由文件配置要访问的组件,这个会在后期说明 这里的components/A 是组件里边的 需要手动 创建A.v ...
- plSql添加快捷键设置
汉化版:工具-首选项-用户界面-编辑器-自动替换-定义文件 英文版:Tools->Perferences->Editor中Autoreplaces选择配置的shortcuts 常用快捷键设 ...
- Windows屏幕模糊,图片打开慢等解决方案
百度经验
- 安装mplayer2和smplayer2
MPlayer2 PPA源安装,打开终端,输入命令: sudo add-apt-repository ppa:motumedia/mplayer-daily sudo apt-get update s ...
- 工作采坑札记:3. Spark中es-hadoop插件异常解决
1. Es-Hadoop异常: org.elasticsearch.hadoop.EsHadoopException: Could not write all entries [615/300864] ...
- siteserver学习笔记
1.安装 安装前的准备工作 参考https://docs.siteserver.cn/getting-started/#/how-to-install-siteserver-cms官网的文档写的很详细 ...
- .NET MVC强类型参数排除和包含属性
MVC接收强类型对象时排除或只接收某几个属性时可使用Bind特性: Bind(Include="属性");如果相包含多个属性可以用逗号分割符分开:Bind(Include=&quo ...