hdu 1874 畅通工程续(模板题 spfa floyd)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1874
spfa 模板
- #include<iostream>
- #include<stdio.h>
- #include<string.h>
- #include<queue>
- using namespace std;
- const int INF=<<;
- int cnt,head[],d[],vis[],n,m;
- queue<int>q;
- struct node
- {
- int u,v,w,next;
- } edge[];
- void add(int u,int v,int w)
- {
- edge[cnt].u=u;
- edge[cnt].v=v;
- edge[cnt].w=w;
- edge[cnt].next=head[u];
- head[u]=cnt++;
- };
- void spfa(int s)
- {
- int i,u,v;
- for(i=; i<n; i++)
- d[i]=INF;
- d[s]=;
- q.push(s);
- vis[s]=;
- while(!q.empty())
- {
- u=q.front();
- q.pop();
- vis[u]=;
- for(i=head[u]; i!=-; i=edge[i].next)
- {
- v=edge[i].v;
- if(d[u]+edge[i].w<d[v])
- {
- d[v]=d[u]+edge[i].w;
- if(!vis[v])
- {
- vis[v]=;
- q.push(v);
- }
- }
- }
- }
- };
- int main()
- {
- int u,v,w,s,t;
- while(cin>>n>>m)
- {
- cnt=;
- memset(head,-,sizeof(head));
- memset(vis,,sizeof(vis));
- while(m--)
- {
- cin>>u>>v>>w;
- add(u,v,w);
- add(v,u,w);
- }
- cin>>s>>t;
- spfa(s);
- if(d[t]<INF) cout<<d[t]<<endl;
- else cout<<-<<endl;
- }
- }
floyd 模板
- #include <stdio.h>
- #include <string.h>
- const int oo = <<;
- int map[][];
- int n, m;
- void floyd()
- {
- int k,i,j;
- for( k = ; k < n; k++)
- for( i = ; i < n; i++)
- for( j = ; j < n; j++)
- if(map[i][k]+map[k][j] < map[i][j])
- map[i][j] = map[i][k]+map[k][j];
- }
- void init()
- {
- int i,j;
- for( i = ; i < n; i++)
- {
- for(j = ; j < n; j++)
- map[i][j] = oo;
- map[i][i] = ;
- }
- }
- int main()
- {
- int i;
- while(~scanf("%d %d", &n, &m))
- {
- init();
- int u, v, w;
- for( i = ; i < m; i++)
- {
- scanf("%d %d %d", &u, &v, &w);
- if(map[u][v] > w)
- {
- map[u][v] = w;
- map[v][u] = w;
- }
- }
- floyd();
- scanf("%d %d", &u, &v);
- if(map[u][v] < oo)
- printf("%d\n", map[u][v]);
- else
- printf("-1\n");
- }
- return ;
- }
hdu 1874 畅通工程续(模板题 spfa floyd)的更多相关文章
- ACM: HDU 1874 畅通工程续-Dijkstra算法
HDU 1874 畅通工程续 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Desc ...
- HDU 1874 畅通工程续-- Dijkstra算法详解 单源点最短路问题
参考 此题Dijkstra算法,一次AC.这个算法时间复杂度O(n2)附上该算法的演示图(来自维基百科): 附上: 迪科斯彻算法分解(优酷) problem link -> HDU 1874 ...
- hdu 1874 畅通工程续
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1874 畅通工程续 Description 某省自从实行了很多年的畅通工程计划后,终于修建了很多路.不过 ...
- HDU 1874畅通工程续(迪杰斯特拉算法)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1874 畅通工程续 Time Limit: 3000/1000 MS (Java/Others) ...
- hdu 1874 畅通工程续(SPFA模板)
畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- hdu 1874 畅通工程续(迪杰斯特拉优先队列,floyd,spfa)
畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- HDU 1874 畅通工程续(最短路/spfa Dijkstra 邻接矩阵+邻接表)
题目链接: 传送门 畅通工程续 Time Limit: 1000MS Memory Limit: 65536K Description 某省自从实行了很多年的畅通工程计划后,终于修建了很多路. ...
- HDU——1874畅通工程续(Dijkstra与SPFA)
畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...
- HDU 1874 畅通工程续【Floyd算法实现】
畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
随机推荐
- AngularJS(7)-表格
ng-repeat 指令可以完美的显示表格. <!DOCTYPE html> <html lang="en"> <head> <meta ...
- linux实现nginx按照日期存储日志
通过shell脚本实现+定时任务+nginx信号管理实现日志按日期存储. 1.编写shell脚本,实现日志按日期存储 #!/bin/bash base_path='/home/wwwlogs/' lo ...
- mysql中limit的用法实例解析
mysql中limit的用法解析. 在mysql中,select * from table limit m,n.其中m是指记录开始的index,从0开始,n是指从第m条开始,取n条. 例如: mysq ...
- Catalyst揭秘 Day3 sqlParser解析
Catalyst揭秘 Day3 sqlParser解析 今天我们会进入catalyst引擎的第一个模块sqlparser,它是catalyst的前置模块. 树形结构 从昨天的介绍我们可以看到sqlPa ...
- strcmp的源码实现
微软方法: int __cdecl strcmp (const char *src, const char *dst) { ; while(!(ret = *(unsigned char *)src ...
- 【android-cocos2d-X iconv.h】在android下使用iconv
(1) 下载文件 首先下载iconv文件 下载地址:http://download.csdn.net/detail/dingkun520wy/6703113 把解压后的iconv文件夹放到cocos ...
- Mac - 更新 Ruby
因为准备在项目中使用bootstrap,在安装bootstrap过程中提示需要Ruby的版本在1.9.2以上,而目前使用的Ruby版本是Mac系统自带的1.8.7.所以需要对Ruby进行升级.这里使用 ...
- flex toolTip样式设置
需要3个文件.一个是样式类,一个样式文件,一个是mxml文件. ●MyToolTip.as package{ import mx.core.UITextField; import mx.ski ...
- IntelliJ IDEA 部署Tomcat及创建一个web工程
一.部署Tomcat 二.新建一个web工程 1.新建一个Project 2.现在建立一个简单的web工程,所以只勾选下面选中的,此外,本版本(IntelliJ IDEA 14.1.5只支持3.1版本 ...
- The 9th Zhejiang Provincial Collegiate Programming Contest->Problem :K-Yet Another Story of Rock-pap
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3610 题意:一对恋人受到fff团惩罚,需要比剪刀石头布,谁输谁死,出一样都 ...