题目描述

图灵杯个人赛就要开始了,蔡老板召集俱乐部各部门的部长开会。综合楼有N (1<=N<=1000)间办公室,编号1~N每个办公室有一个部长在工(mo)作(yu),其中X号是蔡老板的办公室,会议也将在X(1<=X<=N)号办公室举行。综合楼的构造极其特殊,这N个办公室之间M(1<=M<=100,000)条单向走廊。通过第i条路将需要花费Ti(1<=Ti<=100)单位时间。
由于工作很忙,开完会之后各部长需要返回自己的办公室。他们会选择最短时间的最优路径。
为了合理安排接下来的工作,蔡老板想知道,【来回最久的】【!!!】那个部长在路上花费的时间是多少。

输入

第一行:用空格隔开的三个数N,M和X
接下来的M行:每行有用空格隔开的三个数Ai,Bi和Ti,表示从A点到B点花费的时间Ti

输出

一个int型的数,表示花费时间的最大值

样例输入

4 4 1
1 2 1
2 3 1
3 4 3
4 1 3

样例输出

8
 #include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>
#define MAX 0xfffffff
using namespace std; int m,n,x;
int vis[];
int map1[][],dis1[];
int map2[][],dis2[]; void dijkstra1(int (*map)[],int *dis)
{
memset(vis,,sizeof(vis));
vis[x]=;
for(int i=;i<=n;i++)
{
dis[i]=map[x][i];
}
for(int i=;i<=n;i++)
{
int M=MAX,k=-;
for(int j=;j<=n;j++)
{
if(!vis[j]&&dis[j]<M)
M=dis[j],k=j;
}
if(k==-)
return;
vis[k]=;
for(int j=;j<=n;j++)
{
if(!vis[j]&&dis[j]>dis[k]+map[k][j])
dis[j]=dis[k]+map[k][j];
} }
} int main()
{
while(scanf("%d%d%d",&n,&m,&x)!=EOF)
{
//memset(vis,0,sizeof(vis));
for(int i=;i<=n;i++)
{
for(int j=;j<=n;j++)
map1[i][j]=map2[i][j]=i==j?:MAX;
}
for(int i=;i<=m;i++)
{
int a,b,t;
scanf("%d%d%d",&a,&b,&t);
if(map1[a][b]>t)
map1[a][b]=t;
if(map2[b][a]>t)
map2[b][a]=t;
}
dijkstra1(map1,dis1);
dijkstra1(map2,dis2);
for(int i=;i<=n;i++)
{
dis1[i]=dis1[i]+dis2[i];
}
sort(dis1+,dis1++n);
printf("%d\n",dis1[n]); }
return ;
}

最新文章

  1. XSS的原理分析与解剖
  2. IBM appscan 9.0破解版分享
  3. github page 和 hexo 搭建在线博客
  4. winform 开发心得~
  5. MVVM学习
  6. 打印出从1到最大的n位十进制数
  7. MySQL Explain 结果解读与实践
  8. USB重定向
  9. NPOI操作类
  10. 微信小程序movable-view移动图片和双指缩放
  11. DBI-1.634之selectrow_array与fetchrow_array的区别
  12. css文本超出省略号
  13. JS 最简单数组去重
  14. openlayers研究
  15. Maven 学习笔记——Maven环境配置(1)
  16. Android 验证APK是否已经签名或是否是Debug签名
  17. 五、Mosquitto 高级应用之权限管理
  18. Java IO:BIO和NIO差别及各自应用场景
  19. loadrunner11 测试restful
  20. NodeJS入门篇

热门文章

  1. Codeforces Gym 100650C The Game of Efil DFS
  2. delphi TTreeView组件遍历磁盘目录
  3. delphi 文件或目录转换成 TreeView
  4. Cache选型的一些思考
  5. 在Web上调用Ocx控件
  6. SAP BW中的增强(转)
  7. VirtualBox命令更改虚拟硬盘空间
  8. 熟练掌握HDFS的Shell访问
  9. PS将图标变灰
  10. mysql索引常见问题