百科问答小站 logo
百科问答小站 font logo



【组合数学】这个魔术有什么策略吗? 第1页

  

user avatar   liu-yang-zhou-23 网友的相关建议: 
      

由于全体魔术牌是连续的自然数,所以当观众拿走选牌时,必定会造成空缺。但是当观众把牌分两半分别交给A、B,这个空缺被隐藏在其他空缺中——A缺的牌在B手中,反之亦然。所以问题的难点在于如何将A与B手牌中的空缺编码为一张牌,然后交给C使其自行判断。

作为魔术师A或B,我们先将手中的牌升序排列:

然后将这些数字加起来:

当然这些数字太大,不存在这样的手牌,所以我们必须对这些大数进行处理,比如AB分别取若干不同的模运算浓缩为一个数,然后C利用中国同余定理还原AB的数字。

这里有一个技术细节:如果取模后,余数手牌不在手上怎么办?这个可以通过打手势进行约定。比如,我计算得到的数是4,但我只有手牌2与之最接近,那就拿食指中指这2根手指并拢捏住牌头,表示+2;如果手牌只有6与之最近,则用2根手指捏住牌尾,表示-2……或者其他类似的方式告诉C。

接下来的事情就很简单了。

首先把AB两个数都加起来,我们得到的就是所有的牌的和 减去观众拿的牌 : ,那么显然所求就是 . 按照我们上面的例子计算:

于是得到 ,即为所求。


所以如何运用中国剩余法呢?

比如对于上例,我们取模数 ,于是AB两魔术师分别得到

如果我们现在是魔术师C,现在运用中国剩余定理求出 ,我们以 为例:

求出同余逆: ,即

即得

最后得 ,即

显然 , 于是 即为所得。


接下来,我们研究如何让A和B可以分别通过一张牌,将各自的两个余数传递给魔术师C。

上文已经讨论了一个余数传递的方法,但是第二个余数该如何传递呢?利用花色

有几个尖点,就是几。(刘谦在B站魔术课讲过。)

这几个余数够用吗?无论是模 或者模 ,显然余数不够多啊。我们可以利用负数表示——

比如我们想表示模 余 ,因为 ,我们可以把黑桃倒过来表示 ……如何表示余数为 ?我们可以将牌背面递给魔术师C。这样一来,我们可以表示任何情况了。


有几位网友说:你这打手势不好吧,牌又没说有花色……

我声明一下,我只是在构思一个可行的魔术表演,而不是单纯的做题。尽量去还原题主想实现的魔术效果,奈何本人能力有限,如果有大神能想到更好的方法,请分享出来,就别指责我没看题了。

总之别被题目条件所拘束了,开开脑洞也好啊。这个魔术如果严格遵循条件规规矩矩,很有可能是无解的,如果就此止步,岂不会错过更有趣的想法?


user avatar   timosky 网友的相关建议: 
      

依题意,答案是仅在n=1时存在策略。下面证明n≥2时不存在策略。

(我在这里尽力讲得比较清楚详细,以便没多少数学基础的朋友也能完全理解,因而篇幅较长,一次看不完建议收藏)


首先假设n≥2时策略存在。

你现在是魔术师A。你看了看手里被发到的n张牌,审慎地选择其中一张,丢了出去。

设你已丢出的牌为a,B将要丢出的牌为b,而C手里的最后一张牌为c。那么,在已知a的情况下,只需要再知晓b,C就能判断出c了。

魔术师B的计算力很差,他在纠结。我们不妨多给他一些时间。

趁这时候,你的大脑开始了运算。“假如我看到了b,我能求出c吗?——哦对,我的信息量比C大,C能求出来我也一定能!”

你注意到这是一个函数关系,在已知你手里的n张牌的前提下,b决定了c。不妨写作b→c,或者f(b)=c,或者“b撅了c”。

你只知道自己手上的n张牌,因此在你看来c有n+1种可能的取值。“每种未来都是可能的”,你这么想着,脑海里出现了n+1个b→c的式子。显然这是个定义域与值域相同、且满足双射(一一对应)的函数。剩余n+1个b的取值,对应了n+1个c的取值。

但是,等等,它们之间有多少个“圈”?

比如3→5,且5→3,就构成了一个头尾相连、长度为2的“圈”。这个圈可以更长,比如1→2,2→4,4→1,长度为3,也可以简写作1→2→4→1。最长的情况下,则是n+1个数全体连成一个大圈。

这n+1个数必然要形成1个或多个圈,因为每个数在撅另一个数的同时也在被另一个数撅,没有头尾,只能成圈。同一组的b与c不能相同,不能自撅,故圈长至少为2。

这时你又意识到了一个问题:你与C目前的信息量不同,你所知的信息量是大于C的。C只知道你丢出的一张牌,而你知道n张。你可以根据自己拿到的n张牌确定a,C却不能根据这个a反推出你拿到的n张牌。

(也许存在某些a,可以推出n张牌,但不可能每个a都成立,因为n张牌的可能取值是多于一张牌的。并且考虑策略必须照顾到最坏的情况。这点会在后面详细说明)

C可以排除一些可能的c的取值,但不能像你一样排除掉n个那么多。因此在现在的C的脑海里,同样存在着函数b→c,但有不止n+1个式子。

C的函数在已知a的情况下成立。并且它与a是兼容的,你和C看到同一个b以后推测出的还是同一个c。因此这个函数与之前那个函数相比,原有部分不变,只是定义域和值域扩大了。(就像全体雏草姬之于银趴小团体)

并且“撅与被撅”的关系依旧保持了。即原有的“圈”没少,但多了其他的“圈”。

你把目光投向C,随即又虚心地移开了——他也在看着你。“他是不是暗恋我?不不不……他应该也是在推测我的想法吧!他不知道我的n张牌,但他知道我的函数有n+1个取值……等等,那他就可以从他的圈里边挑出一些,使得各圈长度之和为n+1,猜测这是我的函数。”

打个比方,n=2时,假设你拿到1和2丢出了2,那么在你的函数里,345应该组成一个大圈。而在C的函数里,同样存在着345的圈,且2已被排除、1单个不能成圈也排除,那么C的信息量实际上与你相等了。这是与先前结论矛盾的。

——所以n=2时不行。

(看到这里可以休息一下)


现在我们要用另一种方法(当然会用到之前的结论。这需要你把“圈”的概念搞懂。这些结论简单且实用,记一记没坏处),来把这个问题一网打尽。

之前说过,你可以通过n张牌推出a,C却没法通过a推出n张牌,最多只能猜测几种可能。

那么,C具体需要提出多少种可能?

现在请把你的人格代入C,并且把时间追溯到A出牌之前。现在A还未出牌,但你知道自己一旦知晓了a,就会自动生成b→c的函数,并且这里边包含了许多圈圈……

A手里的牌是2n+1里选n张,有Cⁿ₂ₙ₊₁种可能。a这张牌的可能取值则有2n+1种。显然,至少有一张牌对应了至少Cⁿ₂ₙ₊₁/(2n+1)种可能性。

也就是说,如果A打出的是那张牌,你就只能把对A手牌构成的猜测压缩到Cⁿ₂ₙ₊₁/(2n+1)种。不能再少了。

然而,在A打出a后,你的函数最多剩余2n个取值(排除a),它们最多组成n个圈,而只有长度之和为n+1的几个圈,才有可能是A视角里的函数。

我们不妨往大了算。假设总共就是n个圈,且每n/2个圈长度之和都为n+1,那我们可以用另一种方式猜测A的手牌构成:从中选n/2个圈,视为A视角里的函数取值。但这些圈里挑一半出来的组合数,最多最多也只有Cˣ₂ₓ种(x就是n/2……手机打字体谅一下)。

而n≥3的时候,Cⁿ₂ₙ₊₁/(2n+1)是恒大于Cˣ₂ₓ的。

一方面,你知道这张牌绝对代表着那么多种可能性;另一方面,你居然又能压缩得更少……那排除掉的可能性哪去了?A既可能拿着这些牌,又不可能……我疯了,你随意。


综上所述,n≥2时与题设矛盾,不存在成立的策略。并且我们这里甚至还没代入B的心理,也就是说,即使B可以先看a再给牌,依旧不存在策略……(这里其实我有点怀疑,可能有误,烦请高手指出)

而若要在现实中演绎,则可参考 @三川啦啦啦 的做法。

就酱。




  

相关话题

  如何看待希望杯数学竞赛被取消? 
  为什么俄罗斯人在通常被认为考验智力的领域大有作为? 
  为什么很多中国人认为刻苦钻研数学的人会成为科学家而刻苦钻研哲学的人则会发疯? 
  有什么数学定理一般人都觉得是常识,但严谨证明起来却挺费力的? 
  为什么数学上证明必然正难则反易——补集思想,原理出处? 
  我教小学数学,今天家长在微信群里发了一个链接,问我第一题怎么算,我该如何回答?问题如图所示? 
  在 UCLA 陶哲轩手下读博是什么感受? 
  如何评价动画《理科生坠入情网,故尝试证明》? 
  怎样普适地求此特殊非线性矩阵方程的解? 
  数学该不该被踢出高考?数学有什么用处? 

前一个讨论
我感觉陈维桓的微分几何书里面曲率的定义不太清楚,你们觉得呢,曲率的定义究竟应该是什么样?
下一个讨论
一个人一定会相信自己所看到的吗?





© 2024-11-21 - tinynew.org. All Rights Reserved.
© 2024-11-21 - tinynew.org. 保留所有权利