hdu1016
来源:互联网 发布:java 文件上传md5校验 编辑:程序博客网 时间:2024/05/20 21:48
深搜
#include <iostream>
#include <string>
#include <algorithm>
#include <cstdio>
#include <vector>
#include <map>
#include <iterator>
#include <cstring>
#include <cmath>
using namespace std;
int isprime(int n) {
if (n==1) return false;
if (n==2) return true;
for (int i = 2; i*i <=n; i++)
if (n%i==0) return false;
return true;
}
int visited[21];
int ans[21];
int n;
// dfs(n) to determine number with index n
// all number are indexed by 0, 1, 2, ... ,n-1
void dfs(int num) {
if (num == n && isprime(ans[num-1] + ans[0])) {
for (int i = 0; i < num-1; i++)
cout << ans[i] << " ";
cout << ans[num-1] << endl;;
} else {
for (int i = 2; i <= n; i++) {
if (!visited[i]) {
if (isprime(i + ans[num-1])) {
visited[i] = 1;
ans[num++] = i;
dfs(num);
visited[i] = 0;
num--;
}
}
}
}
}
int main() {
int num = 0;
while (cin >> n) {
num++;
cout << "Case " << num << ":" << endl;
memset(visited, 0, sizeof(visited));
ans[0] = 1;
dfs(1);
cout << endl;
}
return 0;
}
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- hdu1016
- HDU1016
- HDU1016
- hdu1016
- hdu1016
- HDU1016
- hdu1016
- hdu1016
- hdu1016
- H.265与H.264
- 整合spring2.5+hibernate3+struts2.0
- 【Cocos游戏实战】功夫小子第七课之游戏主功能场景逻辑功能和暂停功能场景的分析和实现
- attribute与parameter区别
- java参数传递(传值与引用)
- hdu1016
- 恢复 rm -rf * 误删数据
- GCC 4.8编译程序抛出Error: no such instruction: `某某汇编指令`
- 集群之MYsql主从服务之引伸出Mysql互为主从(环形结构)
- 动态规划--循环数组最大子段和
- Maximum Subarray
- 百度编辑器独立上图片传配置
- MAVEN常用命令
- 骨牌覆盖