找回密码
 加入
搜索
楼主: 水木子

[AU3基础] 数字游戏,猜你所选择的是哪个数字。

 火... [复制链接]
发表于 2012-5-15 20:04:50 | 显示全部楼层
回复 41# sanmoking
27个数大概5次可以
发表于 2012-5-15 20:30:38 | 显示全部楼层
本帖最后由 netegg 于 2012-5-15 20:33 编辑

回复 45# sanmoking
这个已经没什么意义了吧,增加行数和增加次数的区别应该不大,想减少选择次数就增加行数
发表于 2012-5-15 20:51:05 | 显示全部楼层
本帖最后由 sanmoking 于 2012-5-15 20:57 编辑

回复 47# netegg
    不一样的,3的6次方,6的3次方,是完全不一样的。
发表于 2012-5-15 20:52:53 | 显示全部楼层
回复 46# netegg
    27个数,每次给三个选择,只需要三次
发表于 2012-5-15 20:59:40 | 显示全部楼层
本帖最后由 netegg 于 2012-5-15 21:01 编辑

回复 49# sanmoking
你把所有的条件都变了,就不是原来的意思了,那应该是如何最有效找到某个数,而不是用户指定一个数了,
这个题目是用户选择了一个数后,然后从这堆数里找出来,怎么给定三个选择
发表于 2012-5-15 21:16:29 | 显示全部楼层
回复 50# netegg


给定三个选择的意思是,每次把这一堆数分成三部分供你选择其中有你心里选的那一部分。。。
我只是把这一堆数变成一堆姓氏。。。
每次给六个选择就是每次把这一堆数分成六大块,你从中选包含你指定的那个数的部分。。,。
发表于 2012-5-15 21:24:27 | 显示全部楼层
本帖最后由 netegg 于 2012-5-15 21:31 编辑

回复 51# sanmoking
这样和题目中的三行有区别吗?难道你在每次分数的时候是设计好的?
大概明白了,相当于自己有分了个组,然后每次去交集?
发表于 2012-5-15 21:30:20 | 显示全部楼层
楼主说的是需要三次找出答案,没有界定每次限定的选择条数,所以说这个题目是有非常大漏洞的。。。
一堆数X从中选出你心里想的,需要两个条件,一个就是每次提供A个选项供你选择,还有一个就是选择B次能够确保找到唯一的答案。
那么我把A=X,岂不是一次就能选出你要的那个了。。所以说这里面的关系是X<=A^B and X>=A^(B-1)
楼主给的例子里面是X=21,A限定为3,其实亏待了B=3的答案,这种情况下,X最高可以达到27。。

所以套用到百家姓这个算命游戏里面,假定A=6,也就是每次给你六个答案来选,限定两次可以得到你的姓氏的话(B=2),那么X这个组里面就只能有36个姓氏,这是完全不够的,所以放宽到三个得到你的姓氏(B=3),那个就有6^3=216个姓氏了,基本上包含了差不多的单姓。。这个游戏就有得玩了,不过216/6=每个选项都有36个字符,密密麻麻的。。。所以这是个左右互搏的结果。。。
发表于 2012-5-15 21:35:13 | 显示全部楼层
每次供你选择的选项数目A,总数X,所以每个选项里面所包括的内容就是X/A,不管你是随机还是按顺序还是怎么着,每个选项里面据对不会有重复的就对了。
之所以选择随机,就是让迷惑性更大一些而已,对于X<=A^B AND X>=A^(B-1)来说,是没有任何区别的
发表于 2012-5-15 21:47:23 | 显示全部楼层
回复 54# sanmoking
这个倒是想到了,可是没想明白你说的分组到底是什么意思
发表于 2012-5-15 22:02:04 | 显示全部楼层
本帖最后由 sanmoking 于 2012-5-15 22:40 编辑

回复 55# netegg



    我似乎没有说什么分组的话。。。。不过你可以把我说的每次分几个选项那个A,当做每次分几个组。。。。
拿X=216,A=6来举例。。
第一次选择,每组的内容为216/6 = 36,排除掉5*36,还剩一个36
第二次选择,每组的内容为36/6 = 6,排除掉5*6,还剩一个6(为了迷惑人,剩下要补上30个上一轮已经淘汰的,凑够每组36)
第三次选择,每组的内容为6/6 = 1,排除掉5*1,还剩一个1(为了迷惑人,剩下要补上35个上一轮已经淘汰的,凑够每组36)
所以,B=3
其实换个方式更好理解,总数=X,每次有A个选项
那么X÷A÷A÷A………÷A÷A÷A<=1就行了,一共除了几次A,这个“几次”就是B。。。

也就是X最大等于A^B
发表于 2012-5-15 22:12:32 | 显示全部楼层
本帖最后由 sanmoking 于 2012-5-15 22:15 编辑

刚看花眼了,前面所说的公式应该是
X<=A^B AND X>A^(B-1)后面那个没有=号

这个题目里面有一个值,一般人觉得似乎很重要,其实没那么重要,这个值就是每次供你选择的每一个选项里面有多少个数,也就是X/A,这个值是固定的,对于选择多少次(所谓的B)才能得到你心里想的那个唯一的值,是没有任何关系的。。。
发表于 2012-5-15 22:28:38 | 显示全部楼层
本帖最后由 netegg 于 2012-5-15 22:35 编辑

回复 57# sanmoking
按每行6个数,数多(>=36)的话似乎反而容易(2次就够),似乎不想你想的那么复杂,不过不知道想的对不对
发表于 2012-5-15 22:35:34 | 显示全部楼层
套用楼主的例子X=21,A=3
那么
21÷3=7
7÷3=2.3333
2.3333÷3=0.7777
除了3次才<=1
所以B=3

如果限制必须三次得到结果,也就是限制B=3
那么每次提供的选项A=3,则X<=3^3=27,每个选项里面最多有X/A=27/3=A^(B-1)=3^2=9个数值
那么每次提供的选项A=4,则X<=4^3=64,每个选项里面最多有X/A=64/4=A^(B-1)=4^2=16个数值
那么每次提供的选项A=5,则X<=5^3=125,每个选项里面最多有X/A=125/5=A^(B-1)=5^2=25个数值
那么每次提供的选项A=6,则X<=6^3=216,每个选项里面最多有X/A=216/6=A^(B-1)=6^2=36个数值
那么每次提供的选项A=7,则X<=7^3=343,每个选项里面最多有X/A=343/7=A^(B-1)=7^2=49个数值
在往上,每个选项里面的数太多了,不好玩了。。

左右互搏术也就是这了,顾得了左边顾不了右边,只能尽量寻找中间平衡点。。
发表于 2012-5-15 22:49:54 | 显示全部楼层
回复 58# netegg


    每行多少个数,对于几次能得到结果是没有关系的。。。
总数【X】,行【A】,几次得到结果【B】,他们三个是互相制约的。
每行多少个数纯粹跟你的总数和行数有关【X/A】,换算一下就是【A^(B-1)】

所以说一共6行的话,
B=2次得到结果,那总数就是36,每行多少个数【X/A】=6=[A^(2-1)]
B=3次得到结果,那总数就是216,每行多少个数【X/A】=36=[A^(3-1)]

两次得到结果的话,X=36太小了,包含不了百家姓,
只好退而求其次,3次得到结果,那样X=216,就差不多了。
但是216,A=6,每个行里面就得36个姓氏,显得有点多。。。不过分成两排显示还算勉强能忍受。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 00:48 , Processed in 0.072028 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表