码迷,mamicode.com
首页 > 其他好文 > 详细

rwkj 1422搜索(素数环)

时间:2014-08-10 18:21:00      阅读:293      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   java   os   io   strong   

  算法分析与设计:搜索(素数环)

时间限制(普通/Java):1000MS/3000MS          运行内存限制:65536KByte 总提交:178            测试通过:35

描述

 

将1-n这n个数摆成一个环,要求相邻的两个数的和是一个素数,编程输出所有可能的解。

 

输入

 

包括多组数据,每组1个数n。n<20

 

输出

 

所有可能的解。

输出格式见样例。

 

样例输入

6 8

样例输出

Case 1: 1 4 3 2 5 6

            1 6 5 2 3 4
Case 2: 1 2 3 8 5 6 7 4

            1 2 5 8 3 4 7 6

            1 4 7 6 5 8 3 2

            1 6 7 4 3 8 5 2

 

 

 

 

 

bubuko.com,布布扣
#include <iostream>
using namespace std;
int a[20],n;
int used[20];
int is_prime(int x)
{
    int i;
    for(i=2;i<x;i++)
    if(x%i==0) return 0;
    return 1;
}
void dfs(int cur)
{
    int i;
    if(cur==n&&is_prime(a[1]+a[n]))
    {
        for(i=1;i<n;i++) cout<<a[i]<<" ";
        cout<<a[n]<<endl;
        return ;
    }
    for(i=2;i<=n;i++)
    {
        if(is_prime(a[cur]+i)&&used[i]==0)
        {
            a[cur+1]=i;used[i]=1;dfs(cur+1);used[i]=0;
        }
    }
}
int main(int argc, char *argv[])
{
    int c;
    c=1;
    while(cin>>n)
    {
        memset(used,0,sizeof(used));
        used[1]=1;a[1]=1;
        
        cout<<"Case "<<c++<<":"<<endl;
        if(n%2==0)
        dfs(1);
        cout<<endl;
        
    }
    return 0;
} 
View Code

#include <iostream>
using namespace std;
int a[20],n;
int used[20];
int is_prime(int x)
{
int i;
for(i=2;i<x;i++)
if(x%i==0) return 0;
return 1;
}
void dfs(int cur)
{
int i;
if(cur==n&&is_prime(a[1]+a[n]))
{
for(i=1;i<n;i++) cout<<a[i]<<" ";
cout<<a[n]<<endl;
return ;
}
for(i=2;i<=n;i++)
{
if(is_prime(a[cur]+i)&&used[i]==0)
{
a[cur+1]=i;used[i]=1;dfs(cur+1);used[i]=0;
}
}
}
int main(int argc, char *argv[])
{
int c;
c=1;
while(cin>>n)
{
memset(used,0,sizeof(used));
used[1]=1;a[1]=1;

cout<<"Case "<<c++<<":"<<endl;
if(n%2==0)
dfs(1);
cout<<endl;

}
return 0;
}

 

 

 


 

 

rwkj 1422搜索(素数环),布布扣,bubuko.com

rwkj 1422搜索(素数环)

标签:style   blog   http   color   java   os   io   strong   

原文地址:http://www.cnblogs.com/2014acm/p/3903008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!