趣味数学---图论四人过桥
来源:互联网 发布:雪人企业版是什么软件 编辑:程序博客网 时间:2024/05/01 00:16
有一天晚上,有四个人需要通过架在山谷间的危桥,任意时刻最多只能有两个人在桥上,过桥需要一盏闪光灯,这些人只有一盏闪光灯。如果单独过桥他们分别需要10、5、2、1分钟,如果两人同时过桥则所需时间是较慢者所需的时间。18分钟后,沿山谷滚滚而下的山洪将把这座桥冲毁。这四个人能及时过桥吗?不用图论知识,证明你的结论;并说明如何用图论知识获得答案。
分析:一共有四个人,一个手电筒,如果群聚的话可以得到最优解,但群聚的意义不在于此,这是只需将群聚改善一下(分类)即可,如何分?
可根据所需时间的不同来分类,无非是按最长,和最短的来分,
按最长来分类,因为走路花费时间取决于时间长的那个,5和10 在一起,那么5和10 先过桥,或者后过桥,如果先过桥,过桥之后,5又要回来带手电,5再一次过桥,需要花20分,显然不可取,因此5和10应该后过桥。所以:
1和2先过桥,然后1回来,因为一定要保证5和10要一起过,所以5和10过桥,然后2去接1过桥,总共需要花费:2+1+10+2+2=17分;所以可以安全过桥
用图论:一个点表示一个状态
1 2 5 10 手电筒
有四个人 回来送手电有3个人 有一个人 回来送手电有2个人 完成
(1 1 1 1 1) (1 1 1 0 1) (1 0 0 0 0) (0 1 0 1 1) ( 0 0 0 0 0)
(0 1 0 1 0) (1 1 0 1 1) (0 1 0 0 0) (0 1 1 0 1)
(0 1 1 0 0) (1 0 1 1 1) (0 0 1 0 0) (0 0 1 1 1)
(0 0 1 1 0) (0 1 1 1 1) (0 0 0 1 0) (1 1 0 0 1 )
(1 1 0 0 0) (1 0 1 0 1)
(1 0 1 0 0) (1 0 0 1 1)
(1 0 0 1 0)
根据以上的状态画出图
然后只要算出(1 1 1 1 1 )到(0 0 0 0 0)的最短路即可(用Dijkstra算法);
详见http://blog.csdn.net/koudaidai/article/details/7904512
博客名:koudaidai
0 0
- 趣味数学---图论四人过桥
- 趣味智力题:过桥
- 趣味程序设计_过桥问题
- 趣味问题之趣味数学
- 趣味数学与C++
- 趣味数学算法实现
- 趣味数学故事
- 趣味数学--安全过河
- 我的趣味数学书单
- 【趣味数学】平面魔方矩阵
- 趣味数学--图论摆度过河
- 2.5趣味数学之猜牌术
- 16部趣味数学纪录片
- 过桥
- 数学的趣味—数学函数
- 趣味数学——药品混乱
- 【算法】算法中的趣味数学(一)
- 【算法】算法中的趣味数学(二)
- HPU-ACM暑期培训第2周14级个人赛:Problem C
- TRIZ解题流程
- 从前台到后台的数组或集合为null问题
- hdoj 2524 矩形A + B
- 云计算的三种服务模式:IaaS,PaaS和SaaS
- 趣味数学---图论四人过桥
- c语言中break和continue的用法和区别
- VS编64 bit驱动找不到头文件
- Sql Server事务日志
- Servlet的生命周期
- Centos7搭建Shadowsocks
- 二维码扫描判断安卓还是苹果下载
- hdu 2647 Reward(拓扑排序)
- Django 2.0中文书籍的第四章用测试template的时候出错的解决办法