7-4素数环 uva 524

Posted bxd123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了7-4素数环 uva 524相关的知识,希望对你有一定的参考价值。

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;

int ans[1000];
int vis[1000];

bool  issushu(int n)
{
    for(int i=2;i<=sqrt(n);i++)
    {
        if(n%i==0)return false;
    }
    return true;
}
void dfs(int n,int cur)
{
    if(cur==n&& issushu(1+ans[cur-1] ) )
    {
        for(int i=0;i<n;i++)
            if(i==0)printf("%d",ans[i]);
            else  printf(" %d",ans[i]);
            printf("
");
    }

    for(int i=2;i<=n;i++)
    {
        if( !vis[i] && issushu(i+ans[cur-1]) )
        {
            ans[cur]=i;
            vis[i]=1;
            dfs(n,cur+1);
            vis[i]=0;//一定要取消标记 不然肯错
        }
    }
}
int main()
{

    int n;int cas=0;
    while(scanf("%d",&n)==1)
    {   if(cas!=0)cout<<endl;
        memset(ans,0,sizeof(ans));
        memset(vis,0,sizeof(vis));
        ans[0]=1;
        printf("Case %d:
",++cas);
        dfs(n,1);

    }
}

 

以上是关于7-4素数环 uva 524的主要内容,如果未能解决你的问题,请参考以下文章

UVA 524 素数环 dfs/回溯法

UVA524 素数环 Prime Ring Problem

UVA - 524 Prime Ring Problem(素数环)(回溯法)

Uva 524 Prime Ring

Uva 524 相邻素数全排列

UVa524 Prime Ring Problem (回溯法)