http://acm.hdu.edu.cn/showproblem.php?pid=1874

SPFA

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 1000001
using namespace std;
int n,m;
int v[],dis[];
struct node
{
int x,y,z,next;
}edge[];
int t;
int q[];
int ss,ee;
int head[];
void init()
{
memset(head,-,sizeof(head));
t=;
}
void add(int x,int y,int z)
{
edge[t].x=x;
edge[t].y=y;
edge[t].z=z;
edge[t].next=head[x];
head[x]=t++;
}
void SPFA()
{
memset(v,,sizeof(v));
for(int i=;i<n;i++)
dis[i]=N;
dis[ss]=;
v[ss]=;
int tt;
int s=,e=;
q[e++]=ss;
while(s<e)
{
tt=q[s++];
v[tt]=;
for(int i=head[tt];i!=-;i=edge[i].next)
{
if(dis[tt]+edge[i].z<dis[edge[i].y])
{
dis[edge[i].y]=dis[tt]+edge[i].z;
if(v[edge[i].y]==)
{
if(dis[edge[i].y]>dis[q[s]])
q[e++]=edge[i].y;
else q[--s]=edge[i].y;
v[edge[i].y]=;
}
}
}
}
if(dis[ee]==N)
printf("-1\n");
else
printf("%d\n",dis[ee]);
}
int main()
{
int x,y,z;
while(scanf("%d%d",&n,&m)!=EOF)
{
init();
while(m--)
{
scanf("%d%d%d",&x,&y,&z);
add(x,y,z);
add(y,x,z);
}
scanf("%d%d",&ss,&ee);
SPFA();
}
return ;
}

Floy

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 1000001
using namespace std;
int n,m;
int ss,ee;
int map[][];
void F()
{
for(int k=;k<n;k++)
{
for(int j=;j<n;j++)
{
for(int i=;i<n;i++)
{
if(map[j][k]+map[k][i]<map[j][i])
map[j][i]=map[j][k]+map[k][i];
}
}
}
if(map[ss][ee]==N)
printf("-1\n");
else
printf("%d\n",map[ss][ee]);
}
int main()
{
int x,y,z;
while(scanf("%d%d",&n,&m)!=EOF)
{
for(int i=;i<n;i++)
{
for(int j=;j<n;j++)
{
map[i][j]=N;
map[j][i]=N;
}
map[i][i]=;
}
while(m--)
{
scanf("%d%d%d",&x,&y,&z);
if(map[x][y]>z)
{
map[x][y]=z;
map[y][x]=z;
}
}
scanf("%d%d",&ss,&ee);
F();
}
return ;
}

畅通工程续 (SPFA模板Floy模板)的更多相关文章

  1. POJ 1874 畅通工程续(最短路模板题)

    畅通工程续 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  2. HDU 1874 畅通工程续 SPFA || dijkstra||floyd

    http://acm.hdu.edu.cn/showproblem.php?pid=1874 题目大意: 给你一些点,让你求S到T的最短路径. 我只是来练习一下SPFA的 dijkstra+邻接矩阵 ...

  3. HDU | 1874 畅通工程续 SPFA&DIJIESITLA

    题目: 某省自从实行了很多年的畅通工程计划后,终于修建了很多路.不过路多了也不好,每次要从一个城镇到另一个城镇时,都有许多种道路方案可以选择,而某些方案要比另一些方案行走的距离要短很多.这让行人很困扰 ...

  4. hdu 1874 畅通工程续(SPFA模板)

    畅通工程续 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  5. hdu 1874 畅通工程续(迪杰斯特拉优先队列,floyd,spfa)

    畅通工程续 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  6. HDU 1874 畅通工程续(最短路/spfa Dijkstra 邻接矩阵+邻接表)

    题目链接: 传送门 畅通工程续 Time Limit: 1000MS     Memory Limit: 65536K Description 某省自从实行了很多年的畅通工程计划后,终于修建了很多路. ...

  7. hdoj 1874 畅通工程续【dijkstra算法or spfa算法】

    畅通工程续 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  8. 畅通工程续(dijskra+SPFA)

    畅通工程续 Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) Total Submiss ...

  9. HDU——1874畅通工程续(Dijkstra与SPFA)

    畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

随机推荐

  1. sklearn提供的自带的数据集

    sklearn 的数据集有好多个种 自带的小数据集(packaged dataset):sklearn.datasets.load_<name> 可在线下载的数据集(Downloaded ...

  2. 【Laravel5】 定制错误页面

    laravel5   所有异常错误都由类   App\Exceptions\Handler    处理,该类包含两个方法:   report   和   render . 这里我们只看 render  ...

  3. 从零开始学习Hadoop--第4章 序列化(转载)

    作者对序列化的描述浅显易懂!(https://www.douban.com/note/313096752/) 1. 序列化从头说 在面向对象程序设计中,类是个很重要的概念.所谓“类”,可以将它想像成建 ...

  4. C# XtraGrid的行指示器(RowIndicator)行号以及图标设置

    以下是几种对Xtragrid的行指示器的几种操作方法,在实际场景当中,很多都需要用到,直接上效果图和源码 一.基本篇—设置表头行号 1.效果图 2.实现方法 需要对XtraGrid事件CustomDr ...

  5. input type="number"时,maxlength不起作用怎么解决

    最近小颖在做公司的angular项目时,发现当input type="number"时,maxlength不起作用,百度了下解决方式,顺便记录下,以便后期查看嘻嘻 <inpu ...

  6. Unity3D笔记 英保通五 鼠标事件与GUI系统双击检测

    一.如何使用GUI事件来检测鼠标是否按下的事件: 获取当前事件:var e:Event=Event.current: using UnityEngine; using System.Collectio ...

  7. spring boot 通过Maven + tomcat 自动化部署

    使用maven创建的springboot项目,默认是jar包,springboot还有自己带的tomcat. 现在为了简单实现本地自动发布项目到服务器,需要通过发布war包的形式,通过maven将项目 ...

  8. 爬虫之Scrapy详解

    性能相关 在编写爬虫时,性能的消耗主要在IO请求中,当单进程单线程模式下请求URL时必然会引起等待,从而使得请求整体变慢. import requests def fetch_async(url): ...

  9. 9.4Django

    2018-9-4 17:19:13 昨天和基友玩到了十点 一路溜着玩喝豆腐脑,谈谈人生!感触颇深! 越努力,越幸运! 关于 Django的一开始的配置东西! 2018-9-4 19:42:27 201 ...

  10. vue报错/ style-loader: Adds some css to the DOM by adding a <style> tag

    1.1.1.   vue-cli搭建的项目引入.styl/css文件报错 http://blog.csdn.net/z852064121/article/details/72660327 / styl ...