Dirjkstra
Description
Input
第一行两个数为n,m,n表示顶点个数,m表示边的条数。 (1 ≤ n, m ≤ 100 )
接下来m行,每一行有三个数t1、t2 和t3,表示顶点t1到顶点t2的路程是t3。请注意这些t1->t2是单向的。
Output
输出N个数,分别为每个点到1号点的距离
Sample Input
6 9
1 2 1
1 3 12
2 3 9
2 4 3
3 5 5
4 3 4
4 5 13
4 6 15
5 6 4
Sample Output
0 1 8 4 13 17
#include<iostream>
#define inf 0x3f3f3f3f
int book[],e[][],dis[];
using namespace std;
int main(){
int n,m;
cin>>n>>m;//录入
for(int i=;i<=n;i++){//初始化
for(int j=;j<=n;j++){
if(i==j)
e[i][j]=;
else
e[i][j]=inf;
}
}
for(int i=;i<=m;i++){//录入
int a,b,c;
cin>>a>>b>>c;
e[a][b]=c;
}
for(int i=;i<=n;i++){//初始化
dis[i]=e[][i];
}
int u;
book[]=;
for(int i=;i<=n-;i++){//进行n-1次
int mina=inf;
for(int j=;j<=n;j++){//选出离源点最近的点(这个点目前还不在book集合里)
if(book[j]==&&dis[j]<mina){
mina=dis[j];
u=j;
}
}
book[u]=;//将这个点放进book集合里
for(int v=;v<=n;v++){//用这个点来松弛各个点
if(e[u][v]<inf){//只有这个点到其他点有路才可以松弛
if(dis[v]>dis[u]+e[u][v])
dis[v]=dis[u]+e[u][v];
}
}
}
for(int i=;i<=n;i++){//输出
cout<<dis[i]<<' ';
}
return ;
}
这是没有进行优化的,目前复杂度还挺高的,数据大的话,就会超时了,一般都用优化之后的,优化的以后再补充吧!!!
O(∩_∩)O
Dirjkstra的更多相关文章
随机推荐
- CodeForces 1144D
原题https://vjudge.net/problem/CodeForces-1144D /*求序列就经过几次step变成同一个数, 其实能发现一个数经过step1或者step2变成相邻的数, 所以 ...
- (转)数据库分片Shard操作
2.1.1什么是数据切分 "Shard" 这个词英文的意思是"碎片",而作为数据库相关的技术用语,似乎最早见于大型多人在线角色扮演游戏中."Shard ...
- Python记:静夜偶记
- Android 开发压缩图片
private Bitmap imageZoom(int position , Bitmap bitMap) { //图片允许最大空间 double maxSize =2 ...
- WPF MVVM 键盘按键事件绑定
<TextBox Text="{Binding LoginName}" Height="35" Canvas.Left="306" T ...
- 执行yum相关命令总是卡住,ctrl+c也退出不了
问题描述 在用yum.rpm命令安装或查询任何包时,执行相关命令后无任何反应,直接卡住,也未给出任何错误提示信息,ctrl+c也不好使,只能杀掉进程. 原因 出现此问题是因为rpm的数据库出现异常了, ...
- XSS Payload List
标签.事件.属性 xss的攻击原理就是前端被插入了恶意的js代码,下面展示大部分可以执行js的标签.事件.属性: 标签(label) <script> <a> <p> ...
- AcWing 842. 排列数字
深搜的一道水题 https://www.acwing.com/problem/content/844/ 正确输入输出 #include<bits/stdc++.h> using nam ...
- beego登录退出与检查登录过滤器
// ShowLogin 登陆显示 func (c *UserController) ShowLogin() { username := c.Ctx.GetCookie("username& ...
- 【游戏体验】I Paid For It!(火柴人破坏狂)
>>>点此处可试玩无敌版<<< 注意,本游戏含有少量暴力元素,13岁以下的儿童切勿尝试本款游戏 这款游戏打击感非常高,动画也比较绚丽,可玩性很高 个人测评 游戏性 ...