caioj 1088 最短路模板
来源:互联网 发布:百度人口迁徙数据 编辑:程序博客网 时间:2024/06/06 01:18
【题意】
给出一个图,起始点是1,结束点是N,边是双向的。求点1到点N的最短距离。哈哈,这就是标准的最短路径问题。
【输入格式】
第一行为两个整数N(1≤N≤10000)和M(0≤M≤200000)。N表示图中点的数目,M表示图中边的数目。
下来M行,每行三个整数x,y,c表示点x到点y之间存在一条边长度为c。(x≠y,1≤c≤10000)
【输出格式】
输出一行,一个整数,即为点1到点N的最短距离。
下。。结果错误百出。。调了半条。
给出一个图,起始点是1,结束点是N,边是双向的。求点1到点N的最短距离。哈哈,这就是标准的最短路径问题。
【输入格式】
第一行为两个整数N(1≤N≤10000)和M(0≤M≤200000)。N表示图中点的数目,M表示图中边的数目。
下来M行,每行三个整数x,y,c表示点x到点y之间存在一条边长度为c。(x≠y,1≤c≤10000)
【输出格式】
输出一行,一个整数,即为点1到点N的最短距离。
如果点1和点N不联通则输出-1。
模板。尝试着用邻接表打了一
#include<cstdio>#include<algorithm>#include<cstring>using namespace std;struct bian{int str,next,to;};int n,m,b[1000001],line[100001],sum[100001];bool f[100001];bian a[1000001];int main(){scanf("%d%d",&n,&m);int x,y,z,k=0;for (int i=1;i<=m;i++){scanf("%d%d%d",&x,&y,&z);k++;a[k].next=b[x];a[k].str=z;a[k].to=y;b[x]=k;k++;a[k].next=b[y];a[k].str=z;a[k].to=x;b[y]=k;}int l=1,r=1;line[1]=1;f[1]=true;memset(sum,0x3f,sizeof(sum)),sum[1]=0;while (l<=r){for (int i=b[line[l]];i;i=a[i].next){if (sum[a[i].to]>sum[line[l]]+a[i].str){sum[a[i].to]=sum[line[l]]+a[i].str;if (!f[a[i].to]){line[++r]=a[i].to;//b[r]=a[i].to;f[a[i].to]=true;}}}f[line[l++]]=0;}if (sum[n]<0x3f) printf("%d",sum[n]);else printf("-1");}
下。。结果错误百出。。调了半条。
阅读全文
0 0
- caioj 1088 最短路模板
- 最短路模板
- 最短路模板
- poj1125最短路模板
- 最短路 SPFA模板
- 最短路 kruskal模板
- 最短路 dijkstra模板
- 最短路模板
- 最短路模板总结
- 最短路模板
- Dijkstra 模板 最短路
- 最短路模板
- 【最短路算法模板】
- 最短路模板
- 最短路 模板
- 最短路模板
- 最短路 【spfa】 模板
- 最短路算法模板
- pycharm控制台项目文件名中文字体乱码显示口口口问题解决
- Android APK签名
- Problem F: 求余数
- tensorflow学习之常用函数总结:tensorflow.reduce_mean()函数
- 这里就一个破图
- caioj 1088 最短路模板
- 第四周项目1——建立单链表
- HNU OJ题库 1002C数字排序问题
- centos nmtui
- Maximum Subsequence Sum
- javaweb学习总结(五)——Servlet开发(一)
- C++项目总结二之内存溢出
- Python入门(实验)
- Object类