在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?
Input
输入包括多组数据。每组数据第一行是两个整数N、M(N<=100,M<=10000),N表示成都的大街上有几个路口,标号为1的路口是商店所在地,标号为N的路口是赛场所在地,M则表示在成都有几条路。N=M=0表示输入结束。接下来M行,每行包括3个整数A,B,C(1<=A,B<=N,1<=C<=1000),表示在路口A与路口B之间有一条路,我们的工作人员需要C分钟的时间走过这条路。
输入保证至少存在1条商店到赛场的路线。
Output
对于每组输入,输出一行,表示工作人员从商店走到赛场的最短时间
Sample Input
2 1
1 2 3
3 3
1 2 5
2 3 5
3 1 2
0 0
Sample Output
3
2

自己写了dj还有flod 可是比赛的啥都没有过,有一点小难受还有一点反感自己不知道是不是应该继续动摇了好多

dj是因为 inf弄小了

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#define inf 0x3f3f3f3f
using namespace std;
int road[105][105];
int dp[105];
int book[105];
int main()
{int n,m;while(scanf("%d%d",&n,&m)!=EOF){if(n==0&&m==0)break;int a,b,c;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)if(i==j)road[i][j]=0;else road[i][j]=inf;memset(dp,0,sizeof(dp));memset(book,0,sizeof(book));for(int i=1;i<=m;i++){scanf("%d%d%d",&a,&b,&c);if(c<road[a][b]){road[a][b]=c;road[b][a]=c; }}//ÊäÈëÍê³Éfor(int i=1;i<=n;i++)dp[i]=road[1][i];int u;for(int i=1;i<=n;i++){int min=inf;for(int j=1;j<=n;j++){if(dp[j]<min&&book[j]==0){min=dp[j];u=j;}}book[u]=1;for(int j=1;j<=n;j++){if((dp[u]+road[u][j])<dp[j])dp[j]=dp[u]+road[u][j];}}printf("%d\n",dp[n]);}return 0;
}

还有一个flod  这个忘记是双向的了

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#define inf 0x3f3f3f3f
using namespace std;
int road[105][105];
int main()
{int n,m;while(scanf("%d%d",&n,&m)!=EOF){if(n==0&&m==0)break;int a,b,c;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){if(i==j)road[i][j]=0;else road[i][j]=inf;}for(int i=1;i<=m;i++){scanf("%d%d%d",&a,&b,&c);if(c<road[a][b]){road[a][b]=c;road[b][a]=c;   }}for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)for(int k=1;k<=n;k++){if(road[i][j]+road[j][k]<road[i][k]){road[i][k]=road[i][j]+road[j][k];road[k][i]=road[i][j]+road[j][k];}}printf("%d\n",road[1][n]);}return 0;
}

F - 最短路 HDU - 2544(最短路的模板)相关推荐

  1. hdu 2544 最短路 (dijkstra)

    http://acm.hdu.edu.cn/showproblem.php?pid=2544 最简单的最短路了吧 改天试试优化版本的 #include<stdio.h> #include& ...

  2. HDU 2544 最短路(各种最短路算法的实现)

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=2544 题目: Problem Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂 ...

  3. hdu 2544最短路(Dijkstra)

    最短路                    Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/O ...

  4. hdu 2544最短路 Floyd算法

    最短路 Time Limit : 5000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) Problem Descrip ...

  5. hdu 2544 最短路 Dijkstra算法

    最短路 Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Desc ...

  6. HDU 2544最短路dijkstra模板题

    最短路 Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  7. hdu 2544 最短路

    Problem Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要 ...

  8. 最短路 HDU - 2544

    在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助 ...

  9. HDU 2544 最短路 最短路入门

    点击打开链接 最短路 Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  10. 最短路 HDU - 2544 (最短路)

    在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助 ...

最新文章

  1. 设计模式之反射与配置文件
  2. python 基础教程:字符串内建函数之大小写的区别
  3. Silverlight实用窍门系列:40.Silverlight中捕捉视频,截图保存到本地【附带实例源码】...
  4. dell服务器sd卡装系统,DELL服务器通过sd卡安装系统(iDRACUsevFlash).doc
  5. 《Nginx文件类型错误解析漏洞--攻击演练》 (转)
  6. NPAPI和PPAPI开发
  7. android 配置java_home_android – React Native:未设置JAVA_HOME,并且在PATH中找不到“java”命令...
  8. Power Strings
  9. rz/sz:工作原理
  10. 第13章 祖玛(《C和C++游戏趣味编程》配套教学视频)
  11. 啦啦外卖UNIAPP(4.0)源码商家+骑手
  12. ncm转换mp3文件时遇到问题:未找到文件
  13. 数据分析师还是算法工程师|用数据多角度解读如何选择
  14. Python操作MyS QL
  15. 北京科技大学计算机导师怎么样,【计算机考研导师】北京科技大学计算机科学与技术系硕士生导师王卫苹...
  16. 2021华为杯D题详细讲解:抗乳腺癌候选药物的优化建模
  17. 《笨办法学python3》再笨的人都能学会python,附PDF,拿走不谢
  18. C++ 栈的括号匹配
  19. Java从业者职业生涯必备书籍200+
  20. 项目总结与复盘的12条“秘诀”!看完还怕做不好项目管理?

热门文章

  1. 谈谈制作台历的心得——年初企业们比较喜欢的宣传方式
  2. 科罗拉多州立大学计算机优势,盘点科罗拉多州立大学优势专业主要看排行榜
  3. php foreach 多出一个_PHP如何实现统计数据合并
  4. 会议室分配时间最长_突破大设计1:时间分配
  5. Java第十九天(字节流和字符流转换、打印流、Properties类)
  6. 模拟实现memcpy、memmove函数
  7. 在Android中实现一个简易的Http服务器
  8. MySQL JDBC URL参数(转)
  9. shell逻辑判断、文件属性判断、if特殊用法、case判断
  10. 你觉得你非常了解Javascript?