題目:有一個班級的學生要一起寫作業,所以他們要到一個統一的地點。現在給你他們各自的位置,

問集合地點定在哪,能够讓全部人走的總路徑長度最小。

分析:圖論、最短路。直接利用Floyd計算最短路,找到和值最小的輸出就可以。

說明:又是太長時間沒刷題了。╮(╯▽╰)╭。

#include <algorithm>
#include <iostream>
#include <string>
#include <map> using namespace std; int dist[23][23]; int main()
{
int n, m, u, v, d, cases = 1;
string place;
while (cin >> n >> m && n+m) {
map<int, string>nameList;
for (int i = 0; i < n; ++ i) {
cin >> place;
nameList[i] = place;
} for (int i = 0; i < n; ++ i) {
for (int j = 0; j < n; ++ j)
dist[i][j] = 500000;
dist[i][i] = 0;
}
for (int i = 0; i < m; ++ i) {
cin >> u >> v >> d;
dist[u-1][v-1] = dist[v-1][u-1] = d;
} for (int k = 0; k < n; ++ k)
for (int i = 0; i < n; ++ i)
for (int j = 0; j < n; ++ j)
if (dist[i][j] > dist[i][k]+dist[k][j])
dist[i][j] = dist[i][k]+dist[k][j];
int space = 0, max = 500000;
for (int i = 0; i < n; ++ i) {
int sum = 0;
for (int j = 0; j < n; ++ j)
if (i != j)
sum += dist[i][j];
if (max > sum) {
max = sum;
space = i;
}
} cout << "Case #" << cases ++ << " : " << nameList[space] << endl;
}
return 0;
}

最新文章

  1. 纯JS打造比QQ空间更强大的图片浏览器-支持拖拽、缩放、过滤、缩略图等
  2. 俄罗斯画师Mikhail Rakhmatullin作品
  3. ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室(九) 之 用 Redis 实现用户在线离线状态消息处理(一)
  4. HDU 5637 Transform 单源最短路
  5. Unity3D脚本中文系列教程(十一)
  6. sql 减去分钟
  7. js实现图片自动切换效果。
  8. AC自动机(Aho-Corasick automation)模板 HDU:2222
  9. Qt编程之通过鼠标滚轮事件缩放QGraphicsView里面的Item
  10. 使用PDO执行SQL语句exec()、query()
  11. 【Unity 3D】学习笔记三十七:物理引擎——碰撞与休眠
  12. 大爱jQuery,10美女模特有用jQuery/CSS3插入(集成点免费下载)
  13. 【BZOJ2734】【HNOI2012】集合选数(状态压缩,动态规划)
  14. 虚拟机搭建CentOS主机win10通过xshell连接
  15. Spring Boot入门(四):开发Web Api接口常用注解总结
  16. Kafka概述(一)
  17. java中的缓冲流!
  18. linux 学习笔记 文件权限管理篇
  19. oracle数据库用户基本操作
  20. Win10系列:UWP界面布局基础7

热门文章

  1. 之前搭建的jenkins的一些笔记
  2. 基于Pipe的PureMVC FLEX框架的多核共享消息技术
  3. 【Henu ACM Round#18 A】 Multiplication Table
  4. Git学习总结(5)——搭建Git简易高效服务器
  5. linux ifconfig找不到
  6. [Python] Generates permutations
  7. KendoUi中KendoDropDownList控件的使用——三级级联模块的实现
  8. RvmTranslator6.5 is released
  9. js---08函数 定时器
  10. xshell --- 查看和关闭 进程