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.pswp.cn/news/714012.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/714012.shtml
英文地址,請注明出處:http://en.pswp.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連接傳送的數據是沒有差錯、不會丟失、不重復并且按序到達的…