百科问答小站 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再给牌,依旧不存在策略……(这里其实我有点怀疑,可能有误,烦请高手指出)

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

就酱。




  

相关话题

  金融数学偏金融还是偏数学? 
  五岁的孩子学习五以内加减算不算早呢,孩子就是不开窍怎么办? 
  这种积分怎么算? 
  无穷维流形是什么意思? 
  e^(-x)|sinx|在(0,+∞)与x轴围成的面积怎么算? 
  请问2^2^2^2+3^3^3^3是否为素数呢? 
  无穷等于无穷吗? 
  一道难度较大的不等式问题,请问如何入手? 
  丁同仁常微分方程第二版2.2第五题怎么解? 
  如何比较这两个数的大小? 

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





© 2024-12-22 - tinynew.org. All Rights Reserved.
© 2024-12-22 - tinynew.org. 保留所有权利