题目描述:

一天小明捧着一本世界地图在看,突然小明拿起笔,将他最爱的那些城市标记出来,并且随机的将这些城市中的某些用线段两两连接起来。
小明量出了每条线段的长度,现在小明想知道在这些线段组成的图中任意两个城市之间的最短距离是多少。

输入:

输入包含多组测试数据。
每组输入第一行为两个正整数n(n<=10)和m(m<=n*(n-1)/2),n表示城市个数,m表示线段个数。
接下来m行,每行输入三个整数a,b和l,表示a市与b市之间存在一条线段,线段长度为l。(a与b不同)
每组最后一行输入两个整数x和y,表示问题:x市与y市之间的最短距离是多少。(x与y不同)
城市标号为1~n,l<=20。

输出:

对于每组输入,输出x市与y市之间的最短距离,如果x市与y市之间非连通,则输出“No path”。

样例输入:

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

样例输出:

3

程序代码:

#include<stdio.h>
#include<string.h>
void dfs(int startx,int sum);
int book[110],s[110][110],j,m,n,x,y,min;
int main()
{int i,a,b,c;while(scanf("%d%d",&n,&m)!=EOF){min=99999999;memset(book,0,sizeof(book));for(i=1;i<=n;i++)for(j=1;j<=n;j++){if(i==j)s[i][j]=0;elses[i][j]=99999999;}for(i=1;i<=m;i++){scanf("%d%d%d",&a,&b,&c);s[a][b]=c;s[b][a]=c;}scanf("%d%d",&x,&y);book[x]=1;dfs(x,0);if(min==99999999)printf("No path\n");elseprintf("%d\n",min);}return 0;
}
void dfs(int startx,int sum)
{int i;if(sum>=min)return;if(startx==y){if(sum<min)min=sum;return;}for(i=1;i<=n;i++){if(book[i]==0&&s[startx][i]!=99999999){book[i]=1;dfs(i,sum+s[startx][i]);book[i]=0;}}return;
}

最爱的城市(dfs)相关推荐

  1. 牛客网CSP-S提高组赛前集训营1题解(仓鼠的石子游戏 [博弈论] + 乃爱与城市的拥挤程度 [树上DP] + 小w的魔术扑克[dfs + 离线])

    文章目录 T1:仓鼠的石子游戏 题目 题解 代码实现 T2:乃爱与城市拥挤程度 题目 题解 代码实现 T3:小w的魔术扑克 题目 题解 代码实现 T1:仓鼠的石子游戏 题目 仓鼠和兔子被禁止玩电脑,无 ...

  2. 题解 乃爱与城市拥挤程度

    题目传送门:牛客 1100B Description 乃爱天下第一可爱! 乃爱居住的国家有 n n n 座城市,这些城市与城市之间有 n − 1 n-1 n−1 条公路相连接,并且保证这些城市两两之间 ...

  3. 牛客-乃爱与城市拥挤程度【树形dp】

    正题 题目链接:https://ac.nowcoder.com/acm/contest/1100/B 题目大意 nnn个点的一棵树,对于每个点求 距离该点不超过kkk的点数 每个点的权值是以该点为起点 ...

  4. 北京,一个让屌丝望而却步的城市

    不知不觉来北京已近十个年头了,用八个字形容就是:悲喜交加,后知后觉. (一) 还记得2004年北京刚下火车的时候,背着双肩包,拖着编织袋,出站口检票发现车票丢了,然后检票口的工作人员粗暴地把我带到警务 ...

  5. 从北大到耶鲁博士,一个山城走出女孩的留学故事

    博士这个头衔在不少人的刻板印象中代表着沉闷.古板.不善言辞,更有甚者为女博士冠上了 "灭绝师太"这样戏谑的称呼. 而这位女博士,她从山间小城走进北大校园,带着理想踏上美国土地,漫游 ...

  6. 郑州没有互联网 | 畅言

    郑州,不能没有互联网......CBD在夕阳下格外美丽,小李却不知道辞了职以后,在这座城市还能去哪里找一个交五险一金.技术氛围好.公司发展方向清晰.团队素质高的互联网公司. 早上七点,小李伴着&quo ...

  7. 那一抹淡淡的汐蓝 (瀑瀑安)

    这篇文章没看懂.................. 那一抹淡淡的汐蓝 (瀑瀑安) 2007-7-18 15:23:56 上课铃声响的那一刻,苏振深又看到她.他已经注意这个女生很久了,她总是踏着铃声走进 ...

  8. 青春无悔―追忆10年前的那场校园民谣

    校园的歌永远不会停止.无论出了多少周杰伦,因为总有上学的人,而上学的人就那么点儿事,免不了的期末考试,假期的离别,假期归来的团聚,还有最后充满故事的毕业.尤其是毕业,人类情感的大部分都能够由这样一个事 ...

  9. 【PTA】PAT (Advanced Level) Practice 1011-1014

    目录 1011 World Cup Betting 翻译: 代码:(查找元素) 1012 The Best Rank 翻译: 代码:(排序) 1013 Battle Over Cities 翻译: 代 ...

最新文章

  1. 零基础入门学习Python(21)-递归1
  2. 数据库系统概念总结:第一章 引言
  3. 第九十八期:TIOBE11月榜单:C、Swift、Go、D与Rust起起伏伏
  4. 基础线性规划实现(matlab,lingo)
  5. dfmea文件_技术干货合集「失效分析、PFMEA DFMEA关系、文件结果化」
  6. netty应用场景_彻底搞懂 netty 线程模型
  7. kali linux 2019.1 替换burpsuite pro 1.7.37
  8. 2020 ECCV 目标检测冠军
  9. win10+linux系统进入安全模式,Win10进入安全模式的方法
  10. linux 配置redis密码
  11. eclipse: workspace出错导致无法启用的解决
  12. 181028每日一句
  13. wps日期加减算天数_日期相减之后的天数怎么用公式计算 - 卡饭网
  14. 徒手下载谷歌图书(google books)
  15. php关闭notice_屏蔽PHP默认设置中的Notice警告的方法
  16. pandas使用速查表
  17. HP 惠普笔记本电脑 禁用触摸板 在插入鼠标后
  18. 英文面试:自我介绍篇nbsp;(转)
  19. VSCode(Visual Studio Code)整合Git
  20. Apache BookKeeper

热门文章

  1. Java高级面试题解析(二):百度Java面试题前200页(精选)
  2. (一)STL体系结构基础介绍
  3. python自动化_day4_迭代器生成器内置函数和匿名函数
  4. list 转换成datatable
  5. 基于OEA框架的客户化设计(一) 总体设计
  6. TFS 2005安装的注意事项
  7. 实现一个简单的HTTP
  8. 测试老司机一起聊聊性能测试是怎么一回事?
  9. SpringBoot是什么?SpringBoot的优缺点有哪些?
  10. Selenium API-WebElement 方法