Codeforces 916C - Jamie and Interesting Graph
2024-09-01 07:24:03
916C - Jamie and Interesting Graph
思路:构造。
对于1到n最短路且素数,那么1到n之间连2
对于最小生成树,找一个稍微大点的素数(比1e5大)构造一个和为这个素数的最小生成树
剩下的边都连1e9
代码:
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back
#define mem(a,b) memset(a,b,sizeof(a)) /*const int N=1e5+5;
const int M=1e7+7;
vector<int>vc;
bool not_prime[M];
void prime(){
for(int i=2;i<M;i++){
if(!not_prime[i])vc.pb(i);
for(int j=0;i*vc[j]<M;j++){
not_prime[i*vc[j]]=true;
if(i%vc[j]==0)break;
}
}
cout<<vc[vc.size()-1]<<endl;//9999991
}*/
int main(){
ios::sync_with_stdio(false);
cin.tie();
//prime();
int n,m,t=;
cin>>n>>m;
if(n==)cout<<<<' '<<<<endl;
else cout<<<<' '<<t<<endl;
cout<<<<' '<<n<<' '<<<<endl;
t-=;
for(int i=;i<n;i++){
if(i!=n-)cout<<<<' '<<i<<' '<<<<endl,t-=;
else cout<<<<' '<<i<<' '<<t<<endl;
}
m-=n-;
for(int i=;i<=n;i++){
if(m==)break;
for(int j=i+;j<=n;j++){
if(m==)break;
cout<<i<<' '<<j<<' '<<<<endl;
m--;
if(m==)break;
}
if(m==)break;
}
return ;
}
最新文章
- [Android Pro] PullToRefreshListView怎么设置各个item之间的间距
- Linux运维人员共用root帐户权限审计
- 加盐加密salt
- LoadRunner常见问题整理
- (C#)WinForm窗体间传值
- 5个缺失的 JavaScript 数字格式化函数
- oracle 笔记
- 给360的六条建议(禁止异地登录,普通用户500G足够用了)
- Android开源代码解读-基于SackOfViewAdapter类实现类似状态通知栏的布局
- c# 弹出框-后台调前台函数
- Android:Drag and Drop的应用
- Winpcap网络编程十之Winpcap实战,两台主机通过中间主机通信
- PDF解决方案(3)--PDF转SWF
- javascript高级程序设计 重读系列
- sersync+rsync同步
- 网络编程之套接字(udp)
- vue 创建项目
- webpack中配置Babel
- OC实现个人中心页面
- 走楼梯(walk) 解题报告
热门文章
- winfrom 下 listbox 选项添加value
- 009-hostname与/etc/hosts区别
- 004-ubuntu安装配置SSH服务
- Junit4用法
- 基于Axis1.4的webservice接口开发(代码开发)
- MIPSsim使用说明
- Linux基础命令---sum,cksum
- 我用了7年时间成长为阿里Java架构师,你呢?(附学习路线图)
- Centos6版本使用yum报错 Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfi Setting up Install Process No package gcc available. Error: Nothing to do
- 如何安装多个jdk