社区
数据结构与算法
帖子详情
一个有意思的问题
cbc
2005-04-10 09:22:21
假定有一个猎人带着一只狼、一头山羊和一棵白菜来到一条河的左岸,拟摆渡过河,而岸边只有一条小船,其 大小仅能装载人和其余三件东西中的一件,也就是说,每一次猎人只能将随行者中的一件带到彼岸。若猎人将狼和山羊留在同一岸上而无人照管,那么,狼就会将羊吃掉;如果猎人把山羊和白菜留在同一岸,山羊也会把白菜吃掉。现在,请你用状态转换图作为工具,描述猎人可能采取的种种摆渡方案,并从中找出可将上述三件东西安全地带到右岸的方案来
...全文
424
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 元钱,他们在玩
一个
游戏。每轮...
一个
有意思
的概率
问题
你参加
一个
抽奖活动,桌上放着3个一摸一样的盒子,主持人告诉你其中有且只有
一个
盒子里有奖品,别的两个都是空的,你可以从中选择
一个
盒子打开。你随意选 了
一个
盒子,在你打开盒子之前,主持人打开了另外两个盒子中的
一个
,并展示给你看,里面是空的。主持人说此时你还有一次机会可以换成选择你没有选也没有被 打开的那个盒子,你要换吗?
第一次看到这个题目还真的是
一个
节目里,但好像不是娱乐节目,没记错的话应该是《鲁豫有约》里。而这次看到就是在csdn里,某人和他的朋友争论不休,然后他就发帖到论坛里了。哈哈
一个
有意思
的博弈
问题
翻书看到一道挺
有意思
的博弈
问题
,据说是冯.诺伊曼提出来的。 "三个人持枪决斗。A的枪法最差,成功率为1/3;B的成功率稍好,为2/3;C的枪法最准,每击必中。决斗规则如下:三个人轮流开枪,枪法最差的A有最高的开枪优先级,B次之,C最低。 假设你是A,采取什么样的策略,才能使自己活命的概率最大?" 这题不仔细考虑的话,凭直觉定会选择向C开枪,因为C的威胁最大!如果给C开枪的
数据结构与算法
33,026
社区成员
35,334
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章