当前位置: 首页 > 编程日记 > 正文

rwkj 1422搜索(素数环)

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

时间限制(普通/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

#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;
}


转载于:https://www.cnblogs.com/2014acm/p/3903008.html

相关文章:

不断的困惑:为什么我仍然使用JavaScript函数语句

Back in the late 90’s — when I learned JavaScript — we were taught to write the “Hello World” function using a function statement. Like this…上世纪90年代后期(当我学习JavaScript时)&#xff0c;我们被教导使用函数语句编写“ Hello World”函数。 像这样… …

Tif文件合并类

using System; using System.Collections; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.IO; using System.Linq;namespace Common {/// <summary>/// Title Tif文件合并类/// Author&#xff1a;ward/// </…

ubuntu /boot 空间清理

本文引用自 blog.csdn.net/yypony/article/details/17260153方法&#xff1a; 1&#xff1a; 在终端下察看已经安装的旧的内核&#xff1a; ctrlaltt——>进入终端——>输入命令&#xff1a;dpkg --get-selections|grep linux给 /boot文件目录分配空间的时候&#xff0c;…

Swift default参数

swift 支持默认参数&#xff0c;在声明方法的时候&#xff0c;可以给某个参数制定一个默认的使用值&#xff0c;当没有传入值的时候&#xff0c;使用默认的参数&#xff0c;当传入值存在的时候&#xff0c;使用对应的传入值 import UIKitvar str "Hello, playground&quo…

vs2017 open从v_宣布#Open2017,这是面向开发人员的除夕直播流

vs2017 open从vHere are a few reasons to stay home this New Year’s Eve:这是除夕之夜留在家里的一些理由&#xff1a; It’s the worst day of the year for fatal drunk driving deaths 这是致命的酒后驾车致死的一年中最糟糕的一天 It’s crowded 拥挤 It’s freaking c…

Laravel Predis Error while reading line from the server.

问题 Laravel说明文档中的 Redis 发布与订阅案例&#xff0c;命令行运行php artisan redis:subscribe 到60s自动断开并报错 [Predis\Connection\ConnectionException]Error while reading line from the server. [tcp://127.0.0.1:6379]解决 在config/database.php配置文件中&a…

android 带边框的圆角按钮

新建buttonstyle.xml 代码如下 <?xml version"1.0" encoding"UTF-8"?> <layer-list xmlns:android"http://schemas.android.com/apk/res/android"> <!-- 连框颜色值 --><item> <shape> <solid andr…

Swift 字面量表达

字面量是一个很强大的特性&#xff0c;对于缩短代码很有帮助 // // 1 字面量就是 简洁明了指出自己的类型并且为变量赋值的的值 // tom false 称之为字面量 let dog:String "tom"; let ok false;// Array 和 Dictionary 赋值的时候也是使用的字面量 let animals:Ar…

韩国文档的编码方式_像韩国学生学习英语一样学习编码

韩国文档的编码方式by Stephen Mayeux斯蒂芬马约(Stephen Mayeux) 像韩国学生学习英语一样学习编码 (Learn to code like a Korean student learns English) If this is the first you’ve heard of me, then there’s only one thing you need to know: I am an ESL Teacher …

mysql乱码解决

在 /etc/my.cnf加上下面二句&#xff1a; skip-character-set-client-handshakecharacter-set-server utf8转载于:https://www.cnblogs.com/sweetXiaoma/p/6170979.html

LoaderManager使用具体解释(三)---实现Loaders

这篇文字将介绍Loader<D>类&#xff0c;而且介绍自己定义Loader的实现。这是本系列的第三篇文章。一&#xff1a;Loaders之前世界二&#xff1a;了解LoaderManager三&#xff1a;实现Loaders四&#xff1a;实例&#xff1a;AppListLoader重中之重&#xff0c;假设你还没有…

Swift 条件编译,编译标记

1 swift 中的条件编译跟OC中的形式是相同的 #if DEBUGself.navigationView.backgroundColor Color_ff3b30;#elseself.navigationView.backgroundColor Color_main;#endif条件可以接受 os(MacOS) ,参数iOS tvOS等平台 arch(),参数为平台架构组合 arm64 ,i386 swift(),参数为版…

代码简介:向圣诞老人和他的精灵学习Google Analytics(分析)

Here are three stories we published this week that are worth your time:这是我们本周发布的三个值得您关注的故事&#xff1a; Learn Google Analytics from Santa and his elves: 12 minute read 向圣诞老人和他的精灵学习Google Analytics(分析)&#xff1a; 阅读12分钟…

生物信息大数据数据库(NCBI、EBI、UCSC、TCGA)

想系统的学习生信数据库可以先看一下北大的公开课&#xff0c;有一章专门讲的数据库与软件&#xff1a; 1-生物信息学&#xff1a;导论与方法 北大\10 生物信息数据库及软件资源 一个优秀的生信开发者能够解决如下问题&#xff1a; 如何鉴定一个重要的且没有被解决的生物学问题…

Dispatch 执行ABC任务,执行完成之后刷新UI,指定任务D

在swift中分组管理异步任务的方式 1 group enter 和 leave 进行同步管理 func method1() {// 创建一个组 &#xff0c;要是在一个控制器中去规划请求顺序&#xff0c;则这个组要是全局的组let group DispatchGroup();let queue DispatchQueue.global();//let imgsArr [&qu…

关于页游垂直同步的若干问题

这个问题要从人眼感觉抖动的原因来分析第一种情况是常说的屏幕撕裂&#xff0c;就是垂直同 步的事情&#xff0c;可以简单理解为显存的数据更新跟屏幕的绘制刷新缺少同步&#xff0c;一次屏幕刷新的结果可能是多次显存更新的片段集合&#xff0c;这种情况只能使用更接近垂直同步…

javascript函数式_JavaScript中的函数式编程—结合实际示例(第1部分)

javascript函数式by rajaraodv通过rajaraodv JavaScript中的函数式编程—结合实际示例(第1部分) (Functional Programming In JavaScript — With Practical Examples (Part 1)) Functional Programming(FP) can change the way you program for the better. But it’s hard t…

简介子窗口控件(api)

子窗口控件 壹佰软件开发小组 整理编译 回忆第七章的CHECKER程序。这些程序显示了矩形网格。当您在一个矩形中按下鼠标按键时&#xff0c;该程序就画一个x&#xff1b;如果您再按一次鼠标按键&#xff0c;那么x就消失。虽然这个程序的CHECKER1和CHECKER2版本只使用一个主窗口…

【MongoDB学习之一】初始MongoDB

环境 MongoDB4.0 win7_x64 CentOS6.5_x64 一、MongoDB简介 (1)MongoDB使用C开发。 (2)MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 (3)MongoDB 将数据存储为一个文档。MongoDB是一个基于分布式文件存储的数据库。 (4)MongoDB使用BSON作为数据存储…

swift 和 oc中检测textfield是否输入数字

iOS 开发中用来检测输入框是否输入的是纯数字 Swift 版本 // 代理方法func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {//判断输入的是否是数字 否则无效var cs CharacterSet();// 获取除…

开源项目贡献者_如何吸引新的贡献者加入您的开源项目

开源项目贡献者by Shubheksha通过Shubheksha 如何吸引新的贡献者加入您的开源项目 (How to attract new contributors to your open source project) It’s hard to attract contributors to your FOSS project — especially contributors who are new to open source.很难吸…

滑动轮播图实现最后一张图片无缝衔接第一张图片

原理&#xff1a;使用insertBefore和insertAfter方法调整图片顺序。 测试&#xff1a;firefox/chrome/IE11正常 已知不足&#xff1a;每次播放均使用了一次insertBefore和insertAfter&#xff0c;可考虑在最后一张图的时候将前几张图片整体后移。以后有空再优化。 1、HTML结构 …

一个完整的Installshield安装程序实例—艾泽拉斯之海洋女神出品(三) --高级设置一...

一个完整的Installshield安装程序实例—艾泽拉斯之海洋女神出品&#xff08;三&#xff09; --高级设置一 原文:一个完整的Installshield安装程序实例—艾泽拉斯之海洋女神出品&#xff08;三&#xff09; --高级设置一上一篇&#xff1a;一个完整的安装程序实例—艾泽拉斯之海…

数据结构,堆和栈和队列的概念

数据结构&#xff0c;堆和栈和队列的概念 1 什么是数据结构 数据结构是计算机存储&#xff0c;组织数据的反复改。数据结构是指相互之间存在的一种或多种特定关系的数据元素集合。 2 数据结构的逻辑结构 1 集合结构&#xff0c;元素都是孤立存在的 2 线性结构 &#xff0c;…

电子白板 矢量 编码_当涉及白板编码采访时,请记住准备

电子白板 矢量 编码by Andy Tiffany通过安迪蒂芙尼(Andy Tiffany) 当涉及白板编码采访时&#xff0c;请记住准备 (When it comes to whiteboard coding interviews, remember to PREP) PREP is a mnemonic I created to help you remember the steps involved in solving whit…

机器学习实战笔记(Python实现)-03-朴素贝叶斯

--------------------------------------------------------------------------------------- 本系列文章为《机器学习实战》学习笔记&#xff0c;内容整理自书本&#xff0c;网络以及自己的理解&#xff0c;如有错误欢迎指正。 源码在Python3.5上测试均通过&#xff0c;代码及…

SQLite.swift的简单使用

使用cocoapod 来进行引入 pod ‘SQLite.swift’ // // SQLiteTool.swift // CreateLectureForSwift // // Created by coder on 2019/6/25. // Copyright © 2019 AlexanderYeah. All rights reserved. // import Foundation import SQLite // id let id Expression(“…

Cypress USB开发文档列表(积累中)

CyUSB.chm(pdf) \Cypress\Cypress Suite USB 3.4.7\Driver Cypress CyUSB.sys Programmers Reference 内容: CyUsb.sys、CyUsb.inf 驱动程序介绍&#xff0c;如何绑定设备到驱动程序&#xff0c;以IOCTL Interface、CYIOCTL.Hd的解释为主要内容的编程指导&#xff0c;主…

对象冒充_使用您的精神探照灯进行冒充冒名顶替综合症

对象冒充by Jaime J. Rios由Jaime J. Rios “Stop that imposter! Seize them!”“停止冒名顶替者&#xff01; 抓住他们&#xff01;” I first spotted my imposter two years ago. It happened when I began learning how to code.两年前&#xff0c;我第一次发现了冒名顶…

grep 函数

linux grep命令1.作用Linux系统中grep命令是一种强大的文本搜索工具&#xff0c;它能使用正则表达式搜索文本&#xff0c;并把匹 配的行打印出来。grep全称是Global Regular Expression Print&#xff0c;表示全局正则表达式版本&#xff0c;它的使用权限是所有用户。 2.格式gr…