holmos(大力)
|
|
9 楼:
Re:Re:Re:Re:扑克牌问题
|
01年08月25日02点26分 |
【三国公子在大作中谈到:】 >我想通过求余数可以解决 > >先说猜数:扑克牌A记作1,K记作13,52张总和是364,能被13整除, >B只要把手中的牌加起来除以13就会得到一个余数,比如得到0就对A说是1(因为扑克牌中无0哦:)) >只要A知道了B的余数,把自已的牌也这样算一下得到另外一个余数,然后相加,再拿它与13的求差也 >就可以知道数了。 > >再说猜花色:如果我把黑桃记作1,红心记作2,方块记作3,梅花记作4,然后B把他的牌统计一下 >就得到一个数加起来也得到一个数,把这个数除以4,然后就把余数通过花色方式告诉A,比如余数 >是2就报红心,A再根据同样方法把自己的余数加上B的余数,得到一个新的数,如果这个数能被4整 >除的话那么C手里的那张就是梅花,以下略。
好强!!!连花色都答出来了,其实我起初是降低了难度,把对花色的要求去掉了!三国公子兄想必一定是学数学的啊!真厉害,佩服,佩服! 虽然和最佳答案可能不是太一样,而且现在我基本处于头脑混乱状态,但我相信你的解答应该是正确的,至少思路是完全正确的,最佳答案是这样的:
我们可以在事先定义1-52个数,他们对应52张牌,同样的方法, B告诉A自己牌的总和除于52得到的余数对应的牌,就成了! 具体细节慢慢体会.(大力注:原作者就写了这么多,我又太懒,呵呵:e) 总结:利用所有牌(对应的数)的和模52是一个常数(26吧),由两个人的 模值可以确定第3人的模值,由于第3人只有1张牌,所以他的牌就可知.
|
|

|
没有完美的犯罪......
|
※来源: 【 推理之门 Tuili.Com 】.
|
|