/*
Name: NYOJ--488--素数环
Author: shen_渊
Date: 15/04/17 15:30
Description: DFS,素数打个表,37以内就够用了
*/ #include<cstring>
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
void dfs(int);
int n;
//int prime[25] = {2,3,5,7,11,13,17,19,23,29,31,37};学到下面一招
bool prime[]={,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,};
int arr[];
int vis[];
int main()
{
// freopen("in.txt","r",stdin);
int m = ;
while(cin>>n,n){
memset(arr,,sizeof(arr));
memset(vis,,sizeof(vis));
arr[] = ;
cout<<"Case "<<++m<<":\n";
if(n == )cout<<"1\n";
else if(n%){
cout<<"No Answer\n";
}else{
dfs();
}
}
return ;
}
void dfs(int ct){
if(ct == n+ && prime[arr[n]+arr[]]){
for(int i=; i<=n; ++i)
cout<<arr[i]<<" ";
cout<<endl;
}else{
for(int i=; i<=n; ++i){
if(!vis[i] && prime[arr[ct-]+i]){
arr[ct] = i;
vis[i] = ;
dfs(ct+);
vis[i] = ;
}
}
}
}

因为用ios::sync_with_stdio(false);取消了C的stream和C++的stream的同步,所以输出出现了不符合预期的结果,以后还是少用cin,cout,scanf,printf,C和C++混合输出的方式

/*
Name:hdu-1016-Prime Ring Problem
Copyright:
Author:
Date: 2018/5/19 16:59:52
Description:水题
*/
#include <cstring>
#include <iostream>
#include <cstdio>
using namespace std;
int n, arr[], vis[];
int prime[]={,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,};//素数打表,因为n最大是20,所以只要打到40
bool jundge(int n) {
for (int i=; i*i<=n; i++) {
if (n%i == ) return ;
}
return ;
}
void dfs(int ct) {
if (ct == n) {
if (prime[arr[ct] + ]) {
cout<<arr[];
for (int i=; i<=n; i++) {
cout<<" "<<arr[i];
}
cout<<endl;
}
} else {
for (int i=; i<=n; i++) {
if (vis[i] == && prime[i+arr[ct]]) {
arr[ct+] = i;
vis[i] = ;
dfs(ct+);
vis[i] = ;
}
}
}
}
int main()
{
// ios::sync_with_stdio(false);
// 加上这一句,用printf输出WA,cout输出AC,测试后发现,用文件读取输入输出的时候,
// printf并不能输出 Case 1:这一行的输出
int k = ;
while (cin>>n) {
// printf("Case %d:\n", ++k);
cout<<"Case "<<++k<<":\n";
if (n == ) {
cout<<"1\n\n";
continue;
}
if (n & ) {
cout<<endl;
continue;
}
memset(arr, , sizeof(arr));
memset(vis, , sizeof(vis));
arr[] = ;
dfs();
cout<<endl;
}
return ;
}

素数环:NYOJ--488--dfs||hdu-1016-Prime Ring Problem的更多相关文章

  1. HDOJ(HDU).1016 Prime Ring Problem (DFS)

    HDOJ(HDU).1016 Prime Ring Problem (DFS) [从零开始DFS(3)] 从零开始DFS HDOJ.1342 Lotto [从零开始DFS(0)] - DFS思想与框架 ...

  2. [HDU 1016]--Prime Ring Problem(回溯)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016 Prime Ring Problem Time Limit: 4000/2000 MS (Jav ...

  3. HDU 1016 Prime Ring Problem(素数环问题)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1016 Prime Ring Problem Time Limit: 4000/2000 MS (Jav ...

  4. HDU - 1016 Prime Ring Problem 经典素数环

    Prime Ring Problem A ring is compose of n circles as shown in diagram. Put natural number 1, 2, ..., ...

  5. HDU 1016 Prime Ring Problem(经典DFS+回溯)

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

  6. HDU 1016 Prime Ring Problem (DFS)

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

  7. Hdu 1016 Prime Ring Problem (素数环经典dfs)

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

  8. hdu 1016 Prime Ring Problem(dfs)

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

  9. hdu 1016 Prime Ring Problem(DFS)

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

  10. HDU 1016 Prime Ring Problem (回溯法)

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

随机推荐

  1. Hadoop环境搭建1_JDK+SSH

    1 前言: Hadoop 最早是为了在Linux 平台上使用而开发的,但是Hadoop 在UNIX.Windows 和Mac OS X 系统上也运行良好.不过,在Windows 上运行Hadoop 稍 ...

  2. centos7 修改sudoers文件

    使用root账户用 visudo 命令来修改. 转自: https://www.digitalocean.com/community/tutorials/how-to-edit-the-sudoers ...

  3. 解决Class 'swoole_server' not found

    1.看下cli模式是否可以正常工作,命令行下运行 php -r "echo php_sapi_name();" 这条命令就是在cli模式运行php语句,php -r就是run一条p ...

  4. C++ 错误积累

    错误一 VS2012错误:不能在成员函数  的类外部重新声明该函数 解决:检查函数的大括号匹配

  5. 第二课 创建http server

    nodejs 不需要单独安装服务器软件 tomcat .apache. iis 看下面的代码创建了http服务器,并输出一些简单的响应内容 //引入http 模块 var http = require ...

  6. iOS启动页加载广告

    1.定义全局成员变量 @interface AppDelegate () @property (strong, nonatomic) UIImageView *adImageView; @proper ...

  7. android 半透明弹窗

    <style name="edit_AlertDialog_style" parent="@android:style/Theme.Dialog"> ...

  8. centos7 运行postgres 数据库脚本db.sql

    [root@localhost ~]# su postgresbash-4.2$ psqlcould not change directory to "/root": Permis ...

  9. fedora25 安装sublime text3

    fedora 25安装使用 sublime text 3 安装 sublime text 3 fedora 需要选择 tarball 版本.下载后将 sublime text 3 解压后放到 opt ...

  10. Iptalbes练习题(二)

    接着上节,上节课,基本功能设置后,现在我们telnet本机一下,发现问题: [root@test1 ~]# telnet Trying 127.0.0.1... telnet: connect to ...