社区
数据结构与算法
帖子详情
一个有意思的问题
cbc
2005-04-10 09:22:21
假定有一个猎人带着一只狼、一头山羊和一棵白菜来到一条河的左岸,拟摆渡过河,而岸边只有一条小船,其 大小仅能装载人和其余三件东西中的一件,也就是说,每一次猎人只能将随行者中的一件带到彼岸。若猎人将狼和山羊留在同一岸上而无人照管,那么,狼就会将羊吃掉;如果猎人把山羊和白菜留在同一岸,山羊也会把白菜吃掉。现在,请你用状态转换图作为工具,描述猎人可能采取的种种摆渡方案,并从中找出可将上述三件东西安全地带到右岸的方案来
...全文
417
10
打赏
收藏
一个有意思的问题
假定有一个猎人带着一只狼、一头山羊和一棵白菜来到一条河的左岸,拟摆渡过河,而岸边只有一条小船,其 大小仅能装载人和其余三件东西中的一件,也就是说,每一次猎人只能将随行者中的一件带到彼岸。若猎人将狼和山羊留在同一岸上而无人照管,那么,狼就会将羊吃掉;如果猎人把山羊和白菜留在同一岸,山羊也会把白菜吃掉。现在,请你用状态转换图作为工具,描述猎人可能采取的种种摆渡方案,并从中找出可将上述三件东西安全地带到右岸的方案来
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yuzl32
2005-04-13
打赏
举报
回复
初中的时候做过这道体
mmmcd
2005-04-13
打赏
举报
回复
刚学过数理逻辑
这类问题可以用消解原理做
本质上也就是寻找初状态向终状态转移的过程。
直接用BFS也是可行的。
jp1984
2005-04-12
打赏
举报
回复
That is original model of what we call backtracking
galois_godel
2005-04-11
打赏
举报
回复
老问题了,你可以查查以前的帖子
cosio
2005-04-11
打赏
举报
回复
人A 狼B 羊C 白菜D
1.A+C 留C
2.A返回
3.A+B 留B
4.A带C返回 --只有B
5.A+D 留D
6.A返回 --只有B\D
7. A+C A\B\C\D
寻开心
2005-04-11
打赏
举报
回复
galois_godel() ( ) 提供的就是一种解法
把各种物体在河的不同位置都表示出来,作为图的节点
有些节点是安全的,有些节点是不安全的状态(安全和不安全就是依靠是否能够共存为标记)
节点和节点之间是有连接的,如果一个状态能够通过猎人的一次摆渡,变成了另外一个状态,那么这两个状态之间就是连通的
这样问题就是找一条通过安全节点的通路问题了,这个可以用计算机来解决的。
cbc
2005-04-11
打赏
举报
回复
对,问题是要用有限自动机理论来解决该问题
MagicCarmack
2005-04-11
打赏
举报
回复
可以查查以前的帖子
newmeteor
2005-04-11
打赏
举报
回复
大家考虑一下,找出正解很容易,但是考虑一下,用状态图呢?
好像有点意思啊!
galois_godel
2005-04-10
打赏
举报
回复
以河一边的情况为状态,一共2^4的状态,一开始状态是1111(二进制),目标状态是0000
如果能运过去,就连条边,比如1111和0101之间可以连条边,(假社第一个是人,第3个是山羊)然后就用Dijkstral或bfs就可以解决
碰到
一个
很
有意思
的
问题
: 如何设计
一个
ConcurrentHashMap
碰到
一个
很
有意思
的
问题
: 如何设计
一个
ConcurrentHashMap
碰到
一个
很
有意思
的
问题
: 如何设计
一个
HashMap
碰到
一个
很
有意思
的
问题
: 如何设计
一个
HashMap
一个
有意思
的分钱模拟
问题
大家好,我是吴师兄,今天来分享
一个
有意思
的分钱模拟
问题
,为了帮助大家理解,采取了可视化的方式。这个
问题
描述是这样的:房间里有 100 个人,每人都有 100 元钱,他们在玩
一个
游戏。每轮...
【测绘摄影测量】空间前方交会数据
【测绘摄影测量】空间前方交会数据
1123bevdet-op-optimize.onnx
1123bevdet-op-optimize.onnx
数据结构与算法
33,025
社区成员
35,336
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章