题目非常简单,只需要判断相邻两个数的和是不是素数,素数的判断参考数论

不过要注意的一点是题目说的是一个环,所以首尾两个数的和也要是素数

我在输出的时候加上了 is_prime(path[n-1]+1) 来判断

#include <iostream>
using namespace std;
const int N = 20;
int n;
int path[N];
bool st[N]; bool is_prime(int n)
{
if(n<2) return false;
for(int i=2;i<=n/i;i++)
{
if(n%i==0) return false;
}
return true;
} void dfs(int u)
{
if(u==n)
{
//因为是个环,所以最后一个数加上1的和也要是素数
if(is_prime(path[n-1]+1))
{
for(int i=0;i<n;i++) printf("%d ",path[i]);
printf("\n");
}
return;
}
for(int i=2;i<=n;i++)
{
if(!st[i]&&is_prime(path[u-1]+i))
{
path[u]=i;
st[i]=true;
dfs(u+1);
st[i]=false;
}
}
} int main()
{
cin>>n;
path[0]=1;
dfs(1);
return 0;
}

nflsoj 5926 素数环的更多相关文章

  1. nyoj 488 素数环

    素数环 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 有一个整数n,把从1到n的数字无重复的排列成环,且使每相邻两个数(包括首尾)的和都为素数,称为素数环. 为了简 ...

  2. nyoj 素数环

    算法:搜索 描述 有一个整数n,把从1到n的数字无重复的排列成环,且使每相邻两个数(包括首尾)的和都为素数,称为素数环. 为了简便起见,我们规定每个素数环都从1开始.例如,下图就是6的一个素数环. 输 ...

  3. nyoj素数环

    素数环 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 有一个整数n,把从1到n的数字无重复的排列成环,且使每相邻两个数(包括首尾)的和都为素数,称为素数环. 为了简 ...

  4. ny488 素数环

    素数环 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 有一个整数n,把从1到n的数字无重复的排列成环,且使每相邻两个数(包括首尾)的和都为素数,称为素数环. 为了简便起 ...

  5. DFS搜索题素数环

    素数环: 输入整数1,2,3,4,5,···,n组成一个环,使得相邻两个整数之和均为素数. 输出时从整数1开始逆时针排列.同一个环应恰好输出一次.n<=16. Sample: input: 6 ...

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

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

  7. ACM_素数环(dfs)

    Problem Description: 如图所示,环由n个圆组成. 将自然数1,2,...,n分别放入每个圆中,并且两个相邻圆中的数字总和应为素数. 注意:第一个圆圈的数量应该始终为1. Input ...

  8. EOJ 1114 素数环

    题意 一个由自然数 1…n (n≤18) 素数环就是如下图所示,环上任意两个节点上数值之和为素数. 1 / \   4  2 \ /    3 Input 输入只有一个数 n,表示你需要建立一个 1… ...

  9. HDU 1016 素数环(dfs + 回溯)

    嗯... 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016 一道很典型的dfs+回溯: 根据题意首先进行初始化,即第一个位置为1,然后进行dfs, ...

  10. 素数环:NYOJ--488--dfs||hdu-1016-Prime Ring Problem

    /* Name: NYOJ--488--素数环 Author: shen_渊 Date: 15/04/17 15:30 Description: DFS,素数打个表,37以内就够用了 */ #incl ...

随机推荐

  1. vue中点击其他任意位置关闭弹框

    mounted() { //点击任意位置关闭区域弹窗 document.addEventListener('click', (e) => { //获取弹窗对象 const userCon = d ...

  2. 文心一言 VS chatgpt (1)-- 算法导论1.1

    1.给出现实生活中需要排序的一个例子或者现实生活中需要计算凸壳的一个例子. 文心一言: 现实生活中需要排序的一个例子: 在一个商店里,顾客需要购买一些商品.他们需要按照价格从低到高排序,以便更容易地找 ...

  3. 2021-01-29:redis同步机制是怎样的?

    福哥答案2021-01-30: [答案1:](https://italk.mashibing.com/question/detail/ques_00006009)全量同步master服务器会开启一个后 ...

  4. Django-1:安装、更新、查看版本

    安装: pip install Django 更新: pip3 install -U Django 或者 python -m pip install -U Django 查看: python -m d ...

  5. dates()datetimes()查询都有哪些日期

    dates()查询都有哪些日期 created_at是列名,year,是要查询的参数,order为排序方式 Course.objects.dates('created_at','year',order ...

  6. .NET 通过源码深究依赖注入原理

    依赖注入 (DI) 是.NET中一个非常重要的软件设计模式,它可以帮助我们更好地管理和组织组件,提高代码的可读性,扩展性和可测试性.在日常工作中,我们一定遇见过这些问题或者疑惑. Singleton服 ...

  7. 基于Django的简易博客系统教程

    1. 安装Django 在命令行中输入以下命令安装Django pip install django 2. 创建Django项目 在命令行中输入以下命令创建一个名为myblog的Django项目 dj ...

  8. Vue 路由router

    简单案例: App.vue是核心组件,其中的<router-link>相当于a标签,to相当于href,export是暴露函数,这样某组件才能被其他组件识别到 代码: <templa ...

  9. 万字长文详述ClickHouse在京喜达实时数据的探索与实践

    1 前言 京喜达技术部在社区团购场景下采用JDQ+Flink+Elasticsearch架构来打造实时数据报表.随着业务的发展 Elasticsearch开始暴露出一些弊端,不适合大批量的数据查询,高 ...

  10. 《MS17-010(永恒之蓝)—漏洞复现及防范》

    作者: susususuao 免责声明:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责. 一. 什么是永恒之蓝? - 永恒之蓝 永恒之蓝(Eternal Blue)是一种利用Window ...