HDU Today---hdu2112(最短路-_-坑在是无向图)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2112
spfa或者迪杰斯特拉都可以
注意公交车是有来回的---
- #include <iostream>
- #include <cstdlib>
- #include <cstdio>
- #include <algorithm>
- #include <vector>
- #include <queue>
- #include <cmath>
- #include <stack>
- #include <cstring>
- #include <map>
- #include <string>
- using namespace std;
- #define INF 0xfffffff
- #define N 12000
- #define met(a, b) memset(a, b, sizeof(a))
- typedef long long LL;
- struct node
- {
- int v, t;
- node(int v, int t):v(v), t(t){}
- };
- vector<vector<node> >G;
- int s, e;
- int cnt, vis[N], dist[N];
- int spfa()
- {
- met(vis, );
- for(int i=; i<cnt; i++)
- dist[i] = INF;
- queue<int>Q;
- Q.push(s);
- vis[s] = ;
- dist[s] = ;
- while(Q.size())
- {
- int p = Q.front(); Q.pop();
- vis[p] = ;
- int len = G[p].size(), q;
- for(int i=; i<len; i++)
- {
- q = G[p][i].v;
- if( dist[q] > dist[p]+G[p][i].t )
- {
- dist[q] = dist[p]+G[p][i].t;
- if(vis[q] == )
- {
- vis[q] = ;
- Q.push(q);
- }
- }
- }
- }
- return dist[e]==INF?-:dist[e];
- }
- int main()
- {
- int n;
- while(scanf("%d", &n), n!=-)
- {
- map<string, int> M;
- M.clear();
- G.clear();
- G.resize(n*+);
- cnt = ;
- char s1[], s2[];
- scanf("%s %s", s1, s2);
- if( !M[s1] ) M[s1] = cnt++;
- if( !M[s2] ) M[s2] = cnt++;
- s = M[s1];
- e = M[s2];
- for(int i=; i<=n; i++)
- {
- int t, u, v;
- scanf("%s %s %d", s1, s2, &t);
- if(!M[s1]) M[s1] = cnt++;
- if(!M[s2]) M[s2] = cnt++;
- u = M[s1];
- v = M[s2];
- G[u].push_back(node(v, t));
- G[v].push_back(node(u, t));
- }
- printf("%d\n", spfa());
- }
- return ;
- }
HDU Today---hdu2112(最短路-_-坑在是无向图)的更多相关文章
- hdu 4568 Hunter 最短路+dp
Hunter Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- hdu2112(HDU Today 简单最短路)
Problem Description 经过锦囊相助,海东集团终于度过了危机,从此,HDU的发展就一直顺风顺水,到了2050年,集团已经相当规模了,据说进入了钱江肉丝经济开发区500强.这时候,XHD ...
- hdu2112 HDU Today 基础最短路
这题的关键是把车站的名字转化为点的编号.我用的是map.声明一个map<string,int> st,然后按照字符串出现的次序给st赋值.例如:st[s1]=2;代表这字符串s1出现的次序 ...
- poj 3463/hdu 1688 求次短路和最短路个数
http://poj.org/problem?id=3463 http://acm.hdu.edu.cn/showproblem.php?pid=1688 求出最短路的条数比最短路大1的次短路的条数和 ...
- UVA 10537 The Toll! Revisited uva1027 Toll(最短路+数学坑)
前者之所以叫加强版,就是把uva1027改编了,附加上打印路径罢了. 03年的final题哦!!虽然是水题,但不是我这个只会做图论题的跛子能轻易尝试的——因为有个数学坑. 题意:运送x个货物从a-&g ...
- F - JDG HDU - 2112 (最短路)&& E - IGNB HDU - 1242 (dfs)
经过锦囊相助,海东集团终于度过了危机,从此,HDU的发展就一直顺风顺水,到了2050年,集团已经相当规模了,据说进入了钱江肉丝经济开发区500强.这时候,XHD夫妇也退居了二线,并在风景秀美的诸暨市浬 ...
- HDU 5521.Meeting 最短路模板题
Meeting Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total ...
- hdu 5094 状压bfs+深坑
http://acm.hdu.edu.cn/showproblem.php?pid=5094 给出n*m矩阵 给出k个障碍,两坐标之间存在墙或门,门最多10种,状压可搞 给出s个钥匙位置及编号,相应的 ...
- HDU 4568 Hunter 最短路+TSP
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4568 Hunter Time Limit: 2000/1000 MS (Java/Others)Me ...
随机推荐
- QT把widget转换成图片后打印
from PyQt5.QtWidgets import (QApplication, QWidget, QTableWidget,QPushButton, QVBoxLayout, QTableWid ...
- php jquery pjax示例源码 (ajax请求,并改变url)
下载地址: http://files.cnblogs.com/files/gaocong/jquery_pjax.rar
- u3d调用自己的dll
原文地址:http://blog.sina.com.cn/s/blog_62f7cb730100zhhf.html 首先用vc建立一个dll工程 然后在里面建立一个testunity.h文件.内容如下 ...
- CPU性能判断指标---上下文切换,运行队列和使用率
http://blog.chinaunix.net/uid-15007890-id-3064254.html uptime11:35:08 up 21:57, 6 users, load aver ...
- Loadrunner进行md5加密方法
本文主要介绍使用Loadrunner进行字符串md5加密的方法. 使用Loadrunner进行md5比较简单,首先是加载md5.h头文件,后使用头文件中的加密函数即可. 1. md5.h头文件内容如下 ...
- TFS 强制删除锁定文件(数据库)
TFS:TFS2010 VS:VS2012 OS:Windows2008 DB:Sqlserver2008 R2 我们在团队开发当中,版本控制是一个不可忽略的工具.我们团队使用的是TFS2010这个版 ...
- elastic-job(lite)使用的一些注意事项
前段时间项目开发中用到了当当开源的elastic-job,使用过程遇到一些问题,虽然不见得会影响写代码,但作为一个致力于搬好每一块砖的码农,当碰到问题时,我们不应该逃避,应该本着有困难也要上,没有困难 ...
- HDU 2594 Simpsons’ Hidden Talents (KMP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2594 这题直接用KMP算法就能够做出来,只是我还尝试了用扩展的kmp,这题用扩展的KMP效率没那么高. ...
- HTML&CSS精选笔记_HTML与CSS网页设计概述
HTML与CSS网页设计概述 Web基本概念 认识网页 网页主要由文字.图像和超链接等元素构成.当然,除了这些元素,网页中还可以包含音频.视频以及Flash等. 名词解释 Internet网络 就是通 ...
- Ext3.4--TreeGridDemo
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CategoryProper ...