HDU Today

Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 12147    Accepted Submission(s): 2851

Problem Description
经过锦囊相助,海东集团终于度过了危机,从此,HDU的发展就一直顺风顺水,到了2050年,集团已经相当规模了,据说进入了钱江肉丝经济开发区500强。这时候,XHD夫妇也退居了二线,并在风景秀美的诸暨市浬浦镇陶姚村买了个房子,开始安度晚年了。
这样住了一段时间,徐总对当地的交通还是不太了解。有时很郁闷,想去一个地方又不知道应该乘什么公交车,在什么地方转车,在什么地方下车(其实徐总自己有车,却一定要与民同乐,这就是徐总的性格)。
徐总经常会问蹩脚的英文问路:“Can you help me?”。看着他那迷茫而又无助的眼神,热心的你能帮帮他吗?
请帮助他用最短的时间到达目的地(假设每一路公交车都只在起点站和终点站停,而且随时都会开)。
Input
输入数据有多组,每组的第一行是公交车的总数N(0<=N<=10000);
第二行有徐总的所在地start,他的目的地end;
接着有n行,每行有站名s,站名e,以及从s到e的时间整数t(0<t<100)(每个地名是一个长度不超过30的字符串)。
note:一组数据中地名数不会超过150个。
如果N==-1,表示输入结束。
Output
如果徐总能到达目的地,输出最短的时间;否则,输出“-1”。
Sample Input
6 xiasha westlake xiasha station 60 xiasha ShoppingCenterofHangZhou 30 station westlake 20 ShoppingCenterofHangZhou supermarket 10 xiasha supermarket 50 supermarket westlake 10 -1
Sample Output
50 Hint: The best route is: xiasha->ShoppingCenterofHangZhou->supermarket->westlake 虽然偶尔会迷路,但是因为有了你的帮助 **和**从此还是过上了幸福的生活。 ――全剧终――
Author
lgx
Source
ACM程序设计_期末考试(时间已定!!)
Recommend
这道题是看了别人的提示才AC的,这里如果起点和终点没有线路那就输出-1。、、、、我只想说魂淡呀..

 1 #pragma warning (disable :4786)
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<iostream>
 5 #include<map>
 6 #include<string>
 7 using namespace std;
 8
 9 const int inf=0x3f3f3f3f;
10 const int tol=152;
11 int path[tol],lowc[tol];
12 int sta[tol][tol];
13 map<string,int>sav;
14 void Dijkstra( int n,int beg )
15 {
16     int i,j,minc;
17     int vis[tol]={0};
18     vis[beg]=1;
19     for(i=0;i<n;i++)
20     {
21         lowc[i]=sta[beg][i];
22         path[i]=beg;
23     }
24     lowc[beg]=0;
25     path[beg]=-1;
26     int pre=beg;
27     for(i=1 ; i<n ;i++)
28     {
29         minc=inf;
30         for(j=0;j<n;j++)
31         {
32             if(vis[j]==0&&lowc[pre]+sta[pre][j]<lowc[j])
33             {
34                 lowc[j]=lowc[pre]+sta[pre][j];
35                 path[j]=pre;
36             }
37         }
38         for(j=0;j<n;j++)
39         {
40             if(vis[j]==0&&lowc[j]<minc)
41             {
42                 minc=lowc[j];
43                 pre=j;
44             }
45         }
46         vis[pre]=1;
47     }
48 }
49
50 int main( void )
51 {
52     int t,e,cc,i,j;
53     string str,en;
54     string aa,bb;
55     while(cin>>t,t!=-1)
56     {
57         cin>>str>>en;
58          e=2;
59          for(i=0;i<tol;i++)
60          {
61              for(j=0;j<tol;j++)
62                  sta[i][j]=inf;
63          }
64         while(t--)
65         {
66             cin>>aa>>bb>>cc;
67             if(sav[aa]==0) sav[aa]=e++;
68             if(sav[bb]==0) sav[bb]=e++;
69              if(sta[sav[aa]-1][sav[bb]-1]>cc)
70          sta[sav[aa]-1][sav[bb]-1]=sta[sav[bb]-1][sav[aa]-1]=cc;
71         }
72     /*    map<string,int>::iterator it;
73         for(it=sav.begin();it!=sav.end();it++)
74         {
75             cout<<it->first<<endl;
76         }*/
77         sta[sav[str]-1][0]=sta[0][sav[str]-1]=0; //扩充图
78         sta[sav[en]-1][e-1]=sta[e-1][sav[en]-1]=0;
79         sav.clear();
80         Dijkstra(e,0);
81         if(lowc[e-1]==inf) cout<<-1<<endl;
82         else
83         cout<<lowc[e-1]<<endl;
84     }
85     return 0;}

View Code

转载于:https://www.cnblogs.com/gongxijun/p/3576489.html

HDUOJ---2112HDU Today相关推荐

  1. HDUOJ 1060 Leftmost Digit

    问题:求x^x的最高位 思路: 假设a = x^x,对10求对数有log(a) = x * log(x) = b.cd,其中b表示指数的最大表示,10^(.cd)就是底 具体代码参考: https:/ ...

  2. HDUOJ 2059 龟兔赛跑——

    HDUOJ 2059 龟兔赛跑 Description 据说在很久很久以前,可怜的兔子经历了人生中最大的打击――赛跑输给乌龟后,心中郁闷,发誓要报仇雪恨,于是躲进了杭州下沙某农业园卧薪尝胆潜心修炼,终 ...

  3. HDUOJ 1847 Good Luck in CET-4 Everybody!

    HDUOJ 1847 Good Luck in CET-4 Everybody! Problem Description 大学英语四级考试就要来临了,你是不是在紧张的复习?也许紧张得连短学期的ACM都 ...

  4. HDUOJ 4513 吉哥系列故事——完美队形II

    HDUOJ 4513 吉哥系列故事--完美队形II Problem Description 吉哥又想出了一个新的完美队形游戏! 假设有n个人按顺序站在他的面前,他们的身高分别是h[1], h[2] - ...

  5. HDUOJ 1069 Monkey and Banana

    HDUOJ 1069 Monkey and Banana 题目链接 Problem Description A group of researchers are designing an experi ...

  6. HDUOJ 6441 Find Integer

    HDUOJ 6441 Find Integer 题目链接 Problem Description people in USSS love math very much, and there is a ...

  7. HDUOJ 2859 Phalanx

    HDUOJ 2859 Phalanx 题目链接 Problem Description Today is army day, but the servicemen are busy with the ...

  8. HDUOJ 6608 Fansblog

    HDUOJ 6608 Fansblog 题目链接 Problem Description Farmer John keeps a website called 'FansBlog' .Everyday ...

  9. HDUOJ 2955 Robberies

    HDUOJ 2955 Robberies 题目链接 Problem Description The aspiring Roy the Robber has seen a lot of American ...

  10. HDUOJ 1114 Piggy-Bank

    HDUOJ 1114 Piggy-Bank 题目链接 Problem Description Before ACM can do anything, a budget must be prepared ...

最新文章

  1. exchange 2010 sp2 证书问题
  2. Android中发送和接收短信
  3. Oracle 定时器
  4. Spring的PropertyPlaceholderConfigurer事例应用
  5. Spark RDD概念学习系列之RDD的重要内部属性(十五)
  6. POJ--2449--Remmarguts#39; Date【dijkstra_heap+A*】第K短路
  7. 关于依赖倒置,控制反转和依赖注入的趣谈
  8. 使用SCI-HUB下载论文
  9. PHOTOSHOP中常用的四种抠图方法
  10. 阿里云无影云桌面分配用户是什么?
  11. Ubuntu 20.04LTS 搜狗输入法不显示图标
  12. 新版标准日本语初级_第三十九课
  13. 利用Python库中的imageio生成GIF格式的动图
  14. 诚之和:极地冰川融化会将远古病原体释放出来吗?
  15. 金蝶专业版服务器提示系统错误,金蝶专业版连接云服务器异常
  16. 蓝雨设计整站SQL注入漏洞
  17. python列表元素比较大小_python列表怎么比较大小
  18. uart驱动框架及编程方法
  19. 公网SSH远程Ubuntu:安装cpolar内网穿透映射22端口 2/3
  20. 利用NetworkManager来调整IPv4和IPv6DNS服务的执行顺序

热门文章

  1. Vue Nuxtjs Cannot set property 'render' of undefined解决方法
  2. Linux vim替换操作
  3. Redis的两种持久化机制RDB和AOF
  4. MySQL优化group by和distinct
  5. SpringMVC简介-传统的Model1和Model2/MVC思想及其优势/Spring MVC的优势
  6. ajax jq 图片上传请求头_全面分析前端的网络请求方式:Ajax ,jQuery ,axios,fetch
  7. Qt for Android调用原生接口打开相机拍照并存储照片
  8. js实现按下删除键清空文本框内容
  9. STM32 之十六 深入了解 ADC 工作原理及参考电压变动的影响
  10. 基于IAR-stm32裸板工程,完美移植RT-Thread Nano系统(附源码)