九度OJ 1459 Prime ring problem(递归)
来源:互联网 发布:小霸王网络电视说明书 编辑:程序博客网 时间:2024/06/06 00:59
- 题目描述:
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.
- 输入:
n (1 < n < 17).
- 输出:
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.- 样例输入:
68
- 样例输出:
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
#include <stdio.h>int prime[] = {2,3,5,7,11,13,17,19,23,29,31,37,41};bool hash[20];int ans[20];int n;bool judge(int x){for(int i = 0; i < 13; i++){if(x == prime[i])return true;}return false;}void check(){if(judge(ans[n]+ans[1]) == false)return;for(int i = 1; i <= n; i++){if(i == 1)printf("%d",ans[i]);elseprintf(" %d",ans[i]);}printf("\n");}void DFS(int number){if(number > 1)if(judge(ans[number]+ans[number-1]) == false)return;if(number == n){check();return;}for(int i = 2; i <= n; i++){if(hash[i] == true)continue;hash[i] = true;ans[number+1] = i;DFS(number+1);hash[i] = false;}}int main(){int count = 1;while(scanf("%d",&n) != EOF){for(int i = 0; i < 20; i++)hash[i] = false;ans[1] = 1; hash[1] = true;printf("Case %d:\n",count);DFS(1);printf("\n");count++;}return 0;}
0 0
- 九度OJ 1459 Prime ring problem(递归)
- 九度OJ 1459 Prime ring problem
- 九度OJ-1459:Prime ring problem
- 九度oj 题目1459:Prime ring problem
- 九度OJ 教程89 递归+回溯之《Prime ring problem》
- 【九度】题目1459:Prime ring problem
- 九度1459:Prime ring problem
- 递归--【全排列问题】九度1459.Prime ring problem
- AOJ-AHU-OJ-460 Prime Ring Problem(递归)
- 递归 Prime Ring Problem
- 九度 Prime Ring Problem hdu 1016
- AOJ-AHU-OJ-460 Prime Ring Problem(栈)
- AOJ-AHU-OJ-460 Prime Ring Problem(巩固)
- 九度OJ 1040:Prime Number(质数) (递归)
- hdoj--1016--Prime Ring Problem(递归回溯)
- 杭电OJ 1016:Prime Ring Problem
- HDU OJ 1016 Prime Ring Problem
- 杭电OJ 1016 Prime Ring Problem
- Python:re中的group方法简介
- 图像变换——计算机视觉图像处理
- 你所必须掌握的三种异步编程方法callbacks,listeners,promise
- Linux 的启动流程
- 熊猫的故事(DFS啊 )
- 九度OJ 1459 Prime ring problem(递归)
- Google首席软件工程师Joshua Bloch谈如何设计一款优秀的API【附PPT】
- Camera 源代码 分析
- php安装错误 (node.c:1953:error) 解决办法
- Github上线Trending功能,帮你轻松找到有潜力的开源项目
- Big Endian 和 Little Endian
- [leetcode] Recover Binary Search Tree
- JAVA文档注释小结 (转)
- Python:正则表达式简介