三只母狼,各带着一只小狼,这六只狼要渡河
来源:互联网 发布:剑网三赵丽颖捏脸数据 编辑:程序博客网 时间:2024/04/30 05:04
有三只母狼,各带着自己的一只小狼。这六只狼要渡河,河上有一艘船,船上一次只能站两只狼。三只母狼都会划船,只有一只小狼会划船。如果小狼离开自己的母狼就会被别的母狼咬死。那怎么样才能让这六只狼都安全的渡过河呢?
此类问题的一般解法
画出状态图,可以转化为图搜索问题,然后可运用各种搜索算法求最优解或全部解。
具体做法
先定义状态,初始状态,A边6狼,目标状态B边6狼。
排列组合一下,画出每个可能的(不管是否能达到)状态。
将不合法状态标记一下。
在能够互相转换的状态间,画上状态之间的连线。
到这里就完成了整个搜索空间的定义,
接下来无非是在一张(有向或无向)图上,求初始点到目标点的路径问题了。
技巧
某些问题的搜索空间很大,因此不宜或无法(由于物理限制)一下子生成整个搜索空间。
那么可以(按某种启发式算法)动态生成搜索空间,边查找边生成。
答案
母狼 A,B,C 都会划船小狼 a,b,c 假设a会划船ab过河,a回 对岸 bac过河,a回 对岸 bcBC过河,Bb回 对岸 CcAa过河,Cc回 对岸 AaBC过河,a回 对岸 ABCab过河,a回 对岸 ABbC ac过河完工
- 三只母狼,各带着一只小狼,这六只狼要渡河
- 母狼的启示
- 渡河问题
- POJ1700 渡河
- Vijos 渡河
- 公无渡河 公竟渡河
- 三只小猪
- 每日三只DP
- 三只兔子
- 三只小猪
- 渡河问题的分析
- 商人渡河问题
- Vijos 1468 渡河
- Vijos 1578 渡河
- 2017.4.17 JZOJ渡河
- 【贪心策略】渡河(river)
- 小狼的ACM之旅
- 关于三只母鸡和三只小鸡过河问题
- Java高质量代码之 — 面向对象
- 火车运煤问题 - 增加一个简单算法实现
- SAFEARRAY使用实例
- JavaScript 函数的引用传递
- C# .Net 多进程同步 通信 共享内存 内存映射文件
- 三只母狼,各带着一只小狼,这六只狼要渡河
- Delphi学习之Class-1
- HDU 1856 More is better
- 背景图片自动适应高分辨率显示器的方法
- 黑马程序员---数据集使用的技巧
- Ubuntu 12.04英文系统安装 中文输入法
- java字体设置,包括大小,颜色,加粗,下划线,对齐,斜体的设置
- Line Chat 例子
- 高德地图api之路线规划(Route)