2024牛客寒假算法基础集训营5 H sakiko的排列构造(hard)个人补题o(╥﹏╥)o

sakiko要构造一个长度为 nnn 的排列 ppp ,使得每一个 pi+i (1≤i≤n)p_i+i\ (1\leq i\leq n)pi​+i (1≤i≤n) 都是质数。

排列的定义为:长度为 nnn 的数组,其中 1−n1-n1−n 每个数字在数组中各出现一次。

输入描述:

第一行输入一个整数 n(1≤n≤106)n(1 \leq n \leq 10^6)n(1≤n≤106) 表示数组长度。

输出描述:

输出 nnn 个整数表示答案,如果有多种解法,则输出任意一种。若无解则输出 -1。

示例1

输入

3

输出

1 3 2

切比雪夫定理:对于一个大于1的正整数,在(a,2a]内总有一个素数

思路:在序列1.2.3...n中,对于任意一个子序列,若能使其第一个数和最后一个数相加等于一个素数,那么这一段的构造为:从最后一个数倒着把他们放入构造数组中。

#include<bits/stdc++.h>
using namespace std;
const int N=2e6+10;
int prime[N];
bool isprime[N];
int cnt=0;
void eular(int n)//欧拉筛法筛出所有素数
{memset(isprime,true,sizeof(isprime));isprime[1]=false;for(int i=2;i<=n;i++){if(isprime[i])prime[cnt++]=i;for(int j=0;prime[j]*i<=n&&j<=cnt;j++){isprime[i*prime[j]]=false;if(i%prime[j]==0)break;}}
}
int main()
{int n;cin>>n;eular(2*n);//欧拉筛int i=n;int a[n+1];while(i>=1){int minp=i+1;while(!isprime[minp])minp++;//找到大于n的第一个素数int mini=minp-i;for(int j=mini;j<=i;j++){a[j]=minp-j;}//存入数组i=mini-1;//处理前面未处理的部分}for(int i=1;i<=n;i++)cout<<a[i]<<" ";//输出
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/714012.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

gpt批量工具,gpt批量生成文章工具

GPT批量工具在今天的数字化时代扮演着越来越重要的角色&#xff0c;它们通过人工智能技术&#xff0c;可以自动批量生成各种类型的文章&#xff0c;为用户提供了便利和效率。本文将介绍5款不同的GPT批量工具&#xff0c;并介绍一款知名的147GPT生成工具&#xff0c;以及另外一款…

c++/c图的邻近矩阵表示

#include<iostream> using namespace std;#define MaxVerterNum 100 typedef char VerterType; typedef int EdgeType; typedef struct {VerterType vexs[MaxVerterNum]; // 存储顶点EdgeType edges[MaxVerterNum][MaxVerterNum]; // 存储邻接矩阵int n, e; // 顶点数和边…

JVM堆内存中新生代晋升到老年代的条件

1. 一般年龄判断 当对象在Eden区中经过第一次 Minor GC 后&#xff0c;如果仍然存活&#xff0c;则会被移动到 From Survivor 区&#xff0c;并且对象的年龄设为 1。每经过一次 Minor GC&#xff0c;存活下来的对象年龄加 1&#xff0c;若存活对象在 From Survivor 区的年龄达…

netlink原理及应用

什么是netlink netlink是一种基于网络的通信机制&#xff0c;允许内核内部、内核与用户态应用之间甚至用户态应用之间进行通信&#xff1b;netlink的主要作用是内核与用户态之间通信&#xff1b;它的思想是&#xff0c;基于BSD的socket使用网络框架在内核和用户态之间进行通信…

GaussDB跨云容灾:实现跨地域的数据库高可用能力

背景 金融、银行业等对数据的安全有着较高的要求&#xff0c;同城容灾建设方案&#xff0c;在绝大多数场景下可以保证业务数据的安全性&#xff0c;但是在极端情况下&#xff0c;如遇不可抗力因素等&#xff0c;要保证数据的安全性&#xff0c;就需要采取跨地域的容灾方案。 …

Dell R730 2U服务器实践3:安装英伟达上代专业AI训练Nvidia P4计算卡

Dell R730是一款非常流行的服务器&#xff0c;2U的机箱可以放入两张显卡&#xff0c;这次先用一张英伟达上代专业级AI训练卡&#xff1a;P4卡做实验&#xff0c;本文记录安装过程。 简洁步骤&#xff1a; 打开机箱将P4显卡插在4号槽位关闭机箱安装驱动 详细步骤&#xff1a; 对…

2024目前三种有效加速国内Github

大家好我是咕噜美乐蒂&#xff0c;很高兴又和大家见面了&#xff01;截至2024年&#xff0c;国内访问 GitHub 的速度受到多种因素的影响&#xff0c;包括网络封锁、地理距离、网络带宽等。为了提高国内用户访问 GitHub 的速度&#xff0c;以下是目前较为有效的三种加速方式&…

网络工程师学习笔记——VRP配置命令大全

VRP是Versatile Routing Platform的简称&#xff0c;它是华为公司数据通信产品的通用网络操作系统。它以IP业务为核心&#xff0c;采用组件化的体系结构&#xff0c;在实现丰富功能特性的同时&#xff0c;还提供了基于应用的可裁剪和可扩展的功能&#xff0c;使得路由器和交换机…

计算机网络物理层知识点总结

本篇博客是基于谢希仁编写的《计算机网络》和王道考研视频总结出来的知识点&#xff0c;本篇总结的主要知识点是第二章的物理层。上一章的传送门&#xff1a;计算机网络体系结构-CSDN博客 通信基础 物理层概念 物理层解决如何在连接各种计算机的传输媒体上传输数据比特流&am…

【Kubernetes】k8s中容器之间、pod之间如何进行网络通信?

目录 PodKubernetes 网络模型同一Pod上的容器之间进行通信同一Node上的不同Pod之间进行通信不同Node上的Pod之间进行通信Service参考 Pod 首先来回顾一下Pod&#xff1a; Pod 是用于构建应用程序的最小可部署对象。单个 Pod 代表集群中正在运行的工作负载&#xff0c;并封装一…

C++初阶篇----类与对象上卷

目录 引言1.面向过程和面向对象初步认识2.类的引入3.类的定义3.1声明与定义全部放在类体中3.2声明与定义分离 4.类的访问限定符及封装4.1访问限定符4.2封装 5.类的作用域6.类的实例化类是对对象进行描述一个类&#xff08;一个类型变量&#xff09;可以实例化出多个对象 7.类对…

Day12-【Java SE进阶】JDK8新特性:Lambda表达式、方法引用、常见算法、正则表达式、异常

一、JDK8新特性 1.Lambda表达式 Lambda表达式是JDK 8开始新增的一种语法形式;作用:用于简化名内部类的代码写法。 注意:Lambda表达式并不是说能简化全部匿名内部类的写法&#xff0c;只能简化函数式接口的匿名内部类。 有且仅有一个抽象方法的接口。注意:将来我们见到的大部…

分布式事务简介

分布式事务简介&#xff0c;通过组内分享学习到的知识&#xff0c;并进行讨论。 主要内容 分布式事务简介 分布式事务是指跨越多个数据库或服务的一系列操作&#xff0c;这些数据库或服务可能分布在网络的不同节点上&#xff0c;它们共同组成一个完整的逻辑工作单元&#xf…

GEE必须会教程—蒸散发数据时间序列分析与下载

今天带来的有关蒸散发数据的下载代码&#xff0c;蒸散发数据在气象气候&#xff0c;农业干旱监测等领域应用广泛&#xff0c;那么在GEE上如何方便快捷获取蒸散发数据呢&#xff1f;今天跟着小编分享代码&#xff0c;快来学习吧&#xff01;&#xff01; A.定义研究区域 //定义…

JSON-RPC 快速开始

文章目录 JSON-RPC什么是JSON-RPCJSON-RPC java开源实现JSON-PRC go开源实现JSON-RPC 和 Restful 都属于什么&#xff1f;RPC、JSON-RPC和HTTP区别 以太坊使用json-rpc&#xff1f;JSON-RPC和gRPCWEB开发中&#xff0c;使用JSON-RPC好&#xff0c;还是RESTful API好&#xff1f…

【前端素材】推荐优质数据统计后台管理系统网页Cleopatra.平台模板(附源码)

一、需求分析 在线后台管理系统是指供管理员或运营人员使用的Web应用程序&#xff0c;用于管理和监控网站、应用程序或系统的运行和数据。它通常包括一系列工具和功能&#xff0c;用于管理用户、内容、权限、数据等。下面是关于在线后台管理系统的详细分析&#xff1a; 1、功…

ssh简介以及 windows 安装ssh教程

SSH&#xff08;Secure Shell&#xff09;是一种网络协议&#xff0c;用于计算机之间的加密登录和其他安全网络服务。通过 SSH&#xff0c;用户可以安全地访问远程计算机&#xff0c;执行命令、传输文件等操作。SSH 使用公钥加密技术&#xff0c;确保数据传输的安全性。本文将从…

TypeScript 哲学 - 2、Narrowing

四种类型守卫 1、truthiness narrowing 2、 3、 4、 control flow analysis

C语言:结构体(自定义类型)知识点(包括结构体内存对齐的热门知识点)

和黛玉学编程呀&#xff0c;大家一起努力呀............. 结构体类型的声明 回顾一下 struct tag { member-list; }variable-list; 创建和初始化 我们知道&#xff0c;在C语言中&#xff0c;对于一些数据是必须初始化的&#xff0c;但是结构体怎么创建并且初始化呢&#xff1…

【计算机网络】TCP 如何实现可靠传输

TCP通过三次握手建立连接&#xff0c;四次挥手释放连接&#xff0c;确保连接建立和连接释放的可靠。 序列号、检验和、确认应答信号、重发机制、连接管理、窗口控制、流量控制、拥塞控制 标准回答 可靠传输就是通过TCP连接传送的数据是没有差错、不会丢失、不重复并且按序到达的…