题目描述

图灵杯个人赛就要开始了,蔡老板召集俱乐部各部门的部长开会。综合楼有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
 1 #include<stdio.h>
 2 #include<iostream>
 3 #include<algorithm>
 4 #include<string.h>
 5 #define MAX 0xfffffff
 6 using namespace std;
 7
 8 int m,n,x;
 9 int vis[1005];
10 int map1[1005][1005],dis1[1005];
11 int map2[1005][1005],dis2[1005];
12
13 void dijkstra1(int (*map)[1005],int *dis)
14 {
15     memset(vis,0,sizeof(vis));
16     vis[x]=1;
17     for(int i=1;i<=n;i++)
18     {
19         dis[i]=map[x][i];
20     }
21     for(int i=1;i<=n;i++)
22     {
23         int M=MAX,k=-1;
24         for(int j=1;j<=n;j++)
25         {
26             if(!vis[j]&&dis[j]<M)
27                 M=dis[j],k=j;
28         }
29             if(k==-1)
30                 return;
31             vis[k]=1;
32             for(int j=1;j<=n;j++)
33             {
34                 if(!vis[j]&&dis[j]>dis[k]+map[k][j])
35                     dis[j]=dis[k]+map[k][j];
36             }
37
38     }
39 }
40
41 int main()
42 {
43     while(scanf("%d%d%d",&n,&m,&x)!=EOF)
44     {
45         //memset(vis,0,sizeof(vis));
46         for(int i=1;i<=n;i++)
47         {
48             for(int j=1;j<=n;j++)
49                 map1[i][j]=map2[i][j]=i==j?0:MAX;
50         }
51         for(int i=1;i<=m;i++)
52         {
53             int a,b,t;
54             scanf("%d%d%d",&a,&b,&t);
55             if(map1[a][b]>t)
56                 map1[a][b]=t;
57             if(map2[b][a]>t)
58                 map2[b][a]=t;
59         }
60         dijkstra1(map1,dis1);
61         dijkstra1(map2,dis2);
62         for(int i=1;i<=n;i++)
63         {
64             dis1[i]=dis1[i]+dis2[i];
65         }
66         sort(dis1+1,dis1+1+n);
67         printf("%d\n",dis1[n]);
68
69     }
70     return 0;
71 } 

转载于:https://www.cnblogs.com/1778393206-qq/p/6092388.html

Contest1065 - 第四届“图灵杯”NEUQ-ACM程序设计竞赛(个人赛)A蔡老板的会议相关推荐

  1. 第八届“图灵杯”NEUQ—ACM程序设计竞赛个人赛(同步赛)

    A题--切蛋糕 龙龙有一块蛋糕,现在他想将蛋糕平均切成k块,分给他的k名hxd.但是不幸的是,因为龙龙不擅长切蛋糕,他每一次只能将一块蛋糕平均分成两份.例如,将一块大小为1的蛋糕分割成两块大小为1/2 ...

  2. Contest1065 - 第四届“图灵杯”NEUQ-ACM程序设计竞赛(个人赛)E粉丝与分割平面...

    题目描述 在一个平面上使用一条直线最多可以将一个平面分割成两个平面,而使用两条直线最多可将平面分割成四份,使用三条直线可将平面分割成七份--这是个经典的平面分割问题,但是too simple,作为一个 ...

  3. 第四届“图灵杯”NEUQ-ACM程序设计人赛真题重现

    文章目录 前言 系列文章目录 一.蔡老板的会议 题目描述 分析 AC代码如下: 二.拿糖果 题目描述 分析 AC代码如下: 三.粉丝与分割平面 题目描述 分析 AC代码如下: 四.粉丝与汉诺塔 题目描 ...

  4. 第十届“图灵杯”NEUQ-ACM程序设计竞赛个人赛解题报告

    第十届"图灵杯"NEUQ-ACM 题目链接 解题报告 D 文稿修订 思路 代码 F 吃包子 思路 代码 G 数字鉴定 思路 代码 H 线性变换 思路 代码 I 试题排版 思路 代码 ...

  5. 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛(同步赛) 2021.1.30

    第八届"图灵杯"NEUQ-ACM程序设计竞赛个人赛(同步赛) B小宝的幸运数组 C上进的凡凡 D Seek the Joker I E Seek the Joker II H 数羊 ...

  6. 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛(同步赛)解题报告

    第八届"图灵杯"NEUQ-ACM程序设计竞赛个人赛(同步赛) 题目总结 A题 切蛋糕 题目信息 解题思路 如果我们将 1/k展开到二进制的形式,那么就可以计算出 需要 多少块1/( ...

  7. 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛题解

    第八届"图灵杯"NEUQ-ACM程序设计竞赛个人赛题解 先抱怨一下,这场比赛的题锅太多了,而且正赶上状态不好,Ac 1/12就离谱.. H 数羊 给定n,m(1≤n≤109,0≤m ...

  8. “师创杯”山东理工大学第九届ACM程序设计竞赛 正式赛 F.校赛~校赛~【思维+规律题】

    校赛~校赛~ Time Limit: 1000MS  Memory Limit: 65536KB Submit  Statistic Problem Description SDUT 的校赛是从 20 ...

  9. 第九届“图灵杯”NEUQ-ACM程序设计竞赛个人赛 nn与游戏

    第九届"图灵杯"NEUQ-ACM程序设计竞赛个人赛 nn与游戏 原题链接 题目描述 nn最近突然对做游戏非常感兴趣,于是他去找做游戏的xf询问相关话题,而xf此时正好在做一个游戏d ...

最新文章

  1. 【云计算】阿里云云计算专业认证考试
  2. MyBatis的高级映射之多对一
  3. python——opencv入门(一)
  4. Window.ShowModalDialog使用手册
  5. Tomcat与JDK版本对应关系
  6. hadoop ha 参考
  7. 数据仓库与数据挖掘(一)
  8. Margin 属性的一些边界情况说明 --转http://blog.csdn.net/ghj1976/article/details/4987686
  9. 4.串口操作之API篇 CreateFile
  10. 免费开源的100套Echarts大屏数据可视化模板分享
  11. BAT批处理提取文件内容替换指定文件内容
  12. ios9提取安装包ipa_支付宝9.9苹果版-ios支付宝9.9内测版下载ipa提取版-《百度网盘下载》西西软件下载...
  13. 智能快递柜的密码模块
  14. Linux云计算学习教程,一个全新的世界—Linux
  15. cesium学习 之 Entity 画卫星轨道 (一)
  16. 名片管理系统 #python项目 #演练 #增删改查CRUD #全程教程
  17. 靶机16 GROTESQUE: 2
  18. java判断字符串st6_是否包含st5_第 18 章 在机器指令级调试
  19. PHP毕业设计项目作品源码选题(8)电影院售票系统毕业设计毕设作品开题报告
  20. 计算机科学增刊能检索,SCI增刊是否能检索和被认可

热门文章

  1. DisplayPort1.4协议学习(一)DP协议概览
  2. v-show和v-if有什么区别?使用场景分别是什么?
  3. Graphx社区发现算法学习
  4. AT32 MCU Audio 24bit例程
  5. java后台 学习顺序
  6. 福利 | 春节了,如何向七大姑八大姨解释我的程序员职业?
  7. 前端工程化 - 剖析npm的包管理机制
  8. win10如何手动强制关联某个类型文件的默认程序打开方式
  9. 如何更高效地在IT职场中摸爬滚打
  10. 细胞膜包覆的介孔铜/锰硅酸盐纳米球(mCMSNs)|黑磷量子点纳米囊泡(BPQD-CCNVs)