hdu1016
来源:互联网 发布:数据库长整型 编辑:程序博客网 时间:2024/05/17 22:30
Prime Ring Problem
Time Limit: 2000 MS Memory Limit: 32768 KB
64-bit integer IO format: %I64d , %I64u Java class name: Main
[Submit] [Status] [Discuss]
Description
A ring is compose of n circles as shown in diagram. Put natural number 1, 2, ..., n into each circle separately, and the sum of numbers in two adjacent circles should be a prime.
Note: the number of first circle should always be 1.
Input
n (0 < n < 20).
Output
The output format is shown as sample below. Each row represents a series of circle numbers in the ring beginning from 1 clockwisely and anticlockwisely. The order of numbers must satisfy the above requirements. Print solutions in lexicographical order.
You are to write a program that completes above process.
Print a blank line after each case.
You are to write a program that completes above process.
Print a blank line after each case.
Sample Input
68
Sample Output
Case 1:1 4 3 2 5 61 6 5 2 3 4Case 2:1 2 3 8 5 6 7 41 2 5 8 3 4 7 61 4 7 6 5 8 3 21 6 7 4 3 8 5 2
Source
Asia 1996, Shanghai (Mainland China)
#include<iostream>#include<cstdio>#include<algorithm>#include<queue>#include<string.h>#include<math.h>using namespace std;int vis[25];int a[25];int n;int sushu(int su){ for(int i=2;i<=sqrt(su);i++) { if(su%i==0) return 0; } return 1;}void dfs(int step){ if(step==n+1) { if(sushu(a[1]+a[n])){ for(int i=1;i<=n;i++){ if(i==1) printf("%d",a[i]); else printf(" %d",a[i]); } printf("\n"); } return ; } for(int i=1;i<=n;i++) { if(!vis[i]&&sushu(i+a[step-1])) { a[step] = i; vis[i] = 1; dfs(step+1); if(i!=1) vis[i] = 0; } }}int main(){ int d=1; while(~scanf("%d",&n)) { memset(vis,0,sizeof(vis)); memset(a,0,sizeof(a)); printf("Case %d:\n",d++); dfs(1); printf("\n"); } return 0;}不要在找到一个排列是去判断相邻的两个数的和是不是素数,这样会超时,虽然只有20个树,应该在dfs 的时候就判断i+a【step-1】是不是素数,如果是素数就继续往下搜。
阅读全文
0 0
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- HDU1016
- HDU1016
- hdu1016
- hdu1016
- HDU1016
- hdu1016
- hdu1016
- hdu1016
- visual studio 2010代码编辑器配色设置
- 手撕红黑树
- Spring MVC中获取request ,response
- 鸭子类型(duck typing)
- Atitit r7 doc list on home ntpc.docx 驱动器 D 中的卷是 p2soft 卷的序列号是 9AD0-D3C8 D:\ati\r2017 v3 r01\
- hdu1016
- JVM内存监控:VisualVM远程监控JVM
- 【Java】——zookeeper伪集群搭建异常 My id 4 not in the peer list
- web页面内容打印总结
- PHP 文件处理常用操作
- Java 8:不要再用循环了
- 工作中redis锁的问题记录
- 【搜索】FZU 2150 Fire Game
- 欢迎使用CSDN-markdown编辑器