17173首页 - 免费新游 - 火爆论坛 - 游戏博客 - 游戏播客 - 百科问答 - 网游排行榜 - 网游期待榜
| 通行证 注册
航海国际 > > 正文
猜数字游戏的标准化流程
2005-01-06           【 加入收藏 / 文章投稿 / 截图上传 / 发表评论
作者:书生
航海里的猜数字游戏有很多种猜法,我试图将我常用的一种猜法整理出一个比较标准化的思路,希望能对还不会猜的人有所帮助。

(一)游戏规则:猜四个不重复的数字,@A$B(@,$皆为数字)表示的是数字和位置都猜对的有@个,数字猜对位置不对的有$个。你一共有8次机会。

(二)下面说说我常用的猜法。

首先我们把0-9这十个数字平均分为五组:一组(1、2),二组(3、4)、三组(5、6)、四组(7、8)、五组(9、0)。我们把要猜的四个数称为目标数组,里面的每一个数字叫目标数字。

第一步思路:目标数组只有4个数字而我们有五组数,故一定存在至少一组数字不会在目标数组中出现,我们首先把这组数排除掉。

第1次,猜1234;第2次,猜1256;第3次,猜1278。

三轮过后,无论返回结果如何,我们都可以推断出被排除的至少一组数组。为了方便举例,我们假设第三组数字(5、6)被排除。我们再假设我们的运气糟糕到了极点,三轮过后4个目标数字和位置都无法确定(如以上三次的返回分别是0A2B,0A1B,0A2B)。

第二步思路:先在随意一组数组(我们选第五组,即0和9)中确定里面的目标数字,同时变化另外一组(我们选第一组,即1和2)数字的位置。

第4次,猜2106。此时共会产生五种可能的结果:(1)返回0A1B,则0被排除,9是目标数字,位置不能确定;(2)返回0A2B,则0是目标数字,且位置不能在第三位;(3)返回1A1B,则0是目标数字,且目标数字是2***或*1***或**0*;(4)返回1A0B,则9是目标数字,且目标数组为2***或*1***;(5)返回2A0B,这是最幸运的情况,即目标数组为2*0*或*10*。

我们仍以最不幸运的情况讨论,即假设返回的是第一种情况。

第三步思路:尝试9的第一个位置,并确定第一组数(1、2)中的目标数字(我们以1做尝试)。

第5次,猜9156。此时共会产生四种可能的结果:(1)返回0A1B。则1被排除,2是目标数字,目标数组为**2*或***2,9不能出现在第一个位置。(2)返回0A2B。则1是目标数字,目标数组为**1*或***1,9不能出现在第一个位置。(3)返回1A0B。则1被排除,2是目标数字,目标数组为9*2*或9**2。(4)返回1A1B。则1是目标数字,目标数组为9*1*或9**1。

我们仍以最不幸运的情况讨论,即假设返回的是第一种情况。

第四步思路:确定第二组数(3、4)中的目标数字,同时让2去尝试第三个位置。

第6次,猜9524。根据不同的结果有若干种结论,其中最不幸运的结果是返回0A2B,结论有二:(1)3是目标数字且不能出现在第3个位置;(2)2出现在第一、二、三个位置时均不能返回A,故目标数组为***2。

第五步思路:确定第四组数(7、8)中的目标数字,同时让9和3分别尝试不同的位置。

第7次,猜3972。根据不同的结果有若干种结论,其中返回1A2B和2A1B都是最不幸运的情况,我们分开讨论。

1A2B时结论有三:(1)四个目标数字分别是2,3,8,9;(2)由于9在第一和第三的位置出现均不能返回A,故9的位置只能在第三个(第四个给2占去了),即目标数组为**92。(3)由于3在第一个位置出现不能返回A,故3的位置只能在第二,即目标数组为*392。

2A1B时,就要好好推理了:(1)假设3对,9错,则9的位置只能是第三,目标数组为3892;(2)假设9对,则3错,但踪合以上推断,3已无立身之所(位置一和位置三均不能返回A,位置二和位置四分别给9和2占去了),所以这种假设不可能成立。

第8次,猜8392(或3892),返回4A0B。

(三)对上述过程作简单的回顾:1234 0A2B;1256 0A1B;1278 0A2B;2106 0A1B;9156 0A1B;9524 0A2B;3972 1A2B(或2A1B);8392(或3892) 4A0B。

以上例子是在每步都猜错未知数字的最不幸运的情况下推算出来的。过程可能会有些少遗漏或差错,你能明白我的意思就好了。

关键字:

相关链接

http://hhsj.17173.com/xinqing/xinqing.shtml

游戏截图
用户: 匿名
史上最强的拼音输入法 下载>>>
评论

我要发布Sogou推广服务

热点标签:
新闻 标题 栏目 文章 图片 链接
热点标签:
新闻 标题 栏目 文章 图片 链接