三人三鬼问题解决思路
3人3鬼过河,船只能坐2个家伙,且那边的鬼都不能比人多,问该如何过河?
问题补充:鬼只要发现他们的数量比人多时就会攻击人,所以不仅是岸上鬼不能比人多,也不能出现
这张图的思想是:首先确定鬼和人的实际状态范围,直接在初期阶段就排除那些干扰项,具体的状态可能是:
1. 人为0,鬼可以是0,1,2,3;
2. 人为3,鬼可以是0,1,2,3;
3. 人数等于鬼数=0,1,2,3;
所以所有可能参与转换的状态有10种,如下图:
![](/assets/blank.gif)
红色点:参与状态转换的点;
绿色数字:走步的顺序;
蓝色的0或1:无船和有船;
根据里面的规律:只要是标记蓝色0的就是无船的状态,他的下一个状态一定是增加的状态,就是在往上画或往右画,且每次画的格数为1或2(船的载重范围);还有个小细节就是在转换的过程中比如是要增加啦不能让已经存在的消失(具体画了才会发现,呵呵);
用这个方法很短的时间里就会解决这个问题,
-------------------------------------------------------------------------------------------EOF
三人三鬼问题解决思路相关推荐
- 【随手记】有趣的面试题 —三人三鬼过河
问题标题 三个人三只鬼结伴郊游,经过一条河,河上只有一艘小木船,木船只有两个位置,每次只能载2个人或鬼,河两岸人的数量如果小于鬼的数量,人就会被鬼无情的吃掉.问怎样过河人才能安然无恙? 问题解析 我们 ...
- YTU 2438: 三人三鬼
不恋尘世浮华,不写红尘纷扰,不叹世道苍凉,不惹情思哀怨,闲看花开,静待花落,冷暖自知,干净如始. 题目描述 目标是将东岸的3人3鬼通过一只小船转移到西岸,希望以尽可能少的摆渡次数. 船的容量有限,一次 ...
- 三人三鬼过河(野人与传教士过河)问题c/c++代码
#include<bits/stdc++.h> using namespace std; vector< pair<int,int> > path; map< ...
- 集合三人斗地主的思路
三人斗地主 集合完成 编写一个自动发牌程序,模拟三人斗地主的摸牌场景.首先要给出提示,谁首先开始摸牌,并且摸牌要和现实摸牌一样,三人循环摸牌,最后还要剩余三张底牌,同时给出地主牌,摸到地主牌的玩家拥 ...
- 程序员》推荐C++ 图书三人谈
程序员>推荐C++ 图书三人谈 主持人:熊节(透明),<程序员>杂志编辑,C-View成员 嘉 宾:孟岩(梦魇),联想公司掌上设备事业部应用开发处任职,C-View成员.与侯捷先生合 ...
- java两人猜数字游戏,三人背后猜数字游戏
1.背景: 猜数字,ABC三人背后各贴一个数字,正整数,各自能看到对方的数字,其中一人为另外两人之和.依次问ABC,第一轮,问A,A猜不出,问BC,同样猜不出,第二轮,AB猜不出,C说 ...
- C语言【程序19】题目:两个乒乓球队进行比赛,各出三人。
//[程序19] //题目:两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人. //已抽签决定比赛名单.有人向队员打听比赛的名单. //a说他不和x比,c说他不和x,z比,请 ...
- 价值投资私募基金三人谈
[人物专访]复制巴菲特:价值投资私募基金三人谈 来源: 证券市场周刊 发布时间: 2006年11月27日15:06 作者: 吴晓兵 以2001年为分水岭,中国的私募机构形成了"南强北弱&q ...
- 韩信点兵(hanxin)--算法竞赛经典习题2-2:相传韩信才智过人,从不清点自己军队的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,他每次只要掠一眼队伍的排尾就知道总数(C++实现)
韩信点兵(hanxin)–算法竞赛经典习题2-2:相传韩信才智过人,从不清点自己军队的人数,只要让士兵先后以三人一排.五人一排.七人一排地变换队形,他每次只要掠一眼队伍的排尾就知道总数. (C++实现 ...
最新文章
- java.sql.Exception:setString 只能处理少于 32766 个字符的字符串
- 虹软人脸识别Android Sample Code
- Ruby_day[1]控制流2
- 一起学nRF51xx 23 - s130蓝牙API介绍
- PC微信逆向:分析发送xml名片call
- java的数据类型、变量类型笔记总结
- php绝对路径与相对路径之间关系的的深入研究
- 仿 小米运动_小米有品上架“黑科技”床垫,让你睡在“空气”上,改变睡眠体验...
- Java小魔女芭芭拉_沉迷蘑菇不可自拔,黏土人《小魔女学园》苏西·曼芭芭拉 图赏...
- Pandas一些小技巧
- 【恋上数据结构】排序算法前置知识及代码环境准备
- 基于SSM的企业人事人员管理系统
- 如何查看电脑IP地址?
- 融资融券的交易成本有哪些?
- eclipse:Project is already imported into workspace
- 那些年,我们走过的Github坑
- 书单 | 带你轻松度假的10本好书!
- element表格实现折叠效果
- VMware 兼容性列表与产品互操作性列表使用收集(持续更新中...)
- 内网和外网之间的通信