/*构造 n个点的无向图,无重边自环边数e也是质数点的度数也是质数 */#include<bits/stdc++.h>#include<vector>using namespace std;#define N 100005int prime[N],m;bool vis[N];voID init(){ for(int i=2;i<N;i++){ if(!vis[i])prime[++m]=i; for(int j=1;j<=m;j++){ if(i*prime[j]>=N)break; vis[i*prime[j]]=1; if(i%prime[j]==0)break; } }}int n;vector<pair<int,int> >ans;int main(){ init(); cin>>n; for(int i=1;i<n;i++) ans.push_back(make_pair(i,i+1)); ans.push_back(make_pair(n,1)); int u=1,e=ans.size(); while(vis[e]){ ans.push_back(make_pair(u,n/2+u)); ++u;++e; } cout<<ans.size()<<"\n"; for(auto p:ans){ cout<<p.first<<" "<<p.second<<‘\n‘; }}总结
以上是内存溢出为你收集整理的质数密度+思维——cf1174D全部内容,希望文章能够帮你解决质数密度+思维——cf1174D所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)