趣题:2n位平衡01串平均有多少个平衡前缀?

标签: 趣题 Brain Storm 生成函数 组合数学 | 发表时间:2011-09-05 17:24 | 作者:Matrix67 jia
出处:http://www.matrix67.com/blog

    这次的趣题来源于 UyHiP 今年八月份的谜题:概率均等地随机选取一个恰好含有 n 个 0 和 n 个 1 的 2n 位 01 串,这个 01 串平均会有多少个 0 和 1 个数相等的前缀(包括空串和整个串本身)?

    为了叙述简便起见,下面我们把所含 0 和 1 个数恰好相等的 01 串叫做平衡的 01 串。例如, 010010110011 就是一个平衡 01 串,它有四个平衡前缀,空串、 01 、01001011 以及整个 01 串本身。我们需要求出的就是,任取一个长为 2n 的平衡 01 串,平衡前缀的个数的期望值是多少。


    注意到,在所有长为 2n 的 01 串中,平衡 01 串一共有 C(2n, n) 个。下面我们证明,所有这些串的所有平衡前缀一共有 4n 个,从而得出问题的答案,即 4n / C(2n, n) 。

    不妨把所有 2n 位平衡 01 串的所有平衡前缀的总数记作 F(n) ,容易得出:

      

    利用生成函数,我们可以瞬间证明,这个和等于 4n 。由 Taylor 展开可知, 数列 C(2n, n) 所对应的生成函数为:

      

    对上式平方,有:

      

    但

      

    因此 F(n) = 4n

 
 
    Joseph DeVincentis 和 Daniel Bitin 给出了一个初等的证明。令 S 为某个平衡 01 串,令 k 为 S 的某个平衡前缀的长度( k 有可能取 0 或者 2n )。我们下面建立一个从所有可能的 (S, k) 到所有长为 2n 的 01 串的一一对应的关系,从而说明所有平衡前缀一共有 4n 个。

    我们先给出把 (S, k) 变换为一个普通 01 串的方法。首先,取 S' = S 。接下来,找出 S' 中比 k 更长的平衡前缀中最短的那一个,把它的长度记作 l 。然后,对 S' 中从第 k + 2 位到第 l 位的数字全部取反。继续寻找新的 l 并执行相应的取反操作,直到 S' 中不再有比 k 更长的平衡前缀。

    下面我们来说明,这个过程不会无限继续下去,总会有终止的时候。不妨假设 S 的第 k + 1 位是一个 0 。由于取反操作不影响前面 k + 1 位数字,因此 S' 的前 k 位始终平衡,第 k + 1 位也始终是 0 。容易看出,每次取反前,第 k + 2 位到第 l 位中 1 的个数比 0 的个数多一个,因此对这一段数字取反将会让整个串少一个 1 多一个 0,从而让整个串的后半部分越来越不平衡。因此,总有一个时候,第 k 位以后将会不再有别的平衡点产生。如果 S 的第 k + 1 位是 1 ,类似的推理同样成立。

    然后,我们需要说明,这个对应关系确实是一一对应的。为此,我们需要给出把 S' 变回 (S, k) 的方法。首先,我们可以很快还原出 k 的值来:找出 S' 中最长的平衡前缀,它的长度就是 k 。注意, k 一定是偶数,并且有可能是 0 或者 2n 。如果 k 是 2n ,即 S' 本身就是一个平衡串,那么我们可以直接还原出 S = S' 。下面只考虑 k < 2n 的情况。

    不妨假设 S' 的第 k + 1 位是 0 ,由于在此之后 S' 没有其他平衡点了,因此从第 k + 2 位开始数下去, 0 的个数必须始终大于等于 1 的个数。由于从第 k + 2 位一直数到最后一位一共有奇数个数字,因此其中 0 的总个数也就一定严格大于 1 的总个数。找出从第 k + 2 位起, 0 的个数首次超过 1 的个数的地方,比如说第 l 位。对第 k + 2 位到第 l 位的数取反(此时 S' 的前 l 位将变成一个平衡前缀)。这样一来,整个串的后面部分将会少一个 0 多一个 1 ,但 0 的个数有可能仍然比 1 多。继续找出从第 k + 2 位起首次 0 的个数刚好比 1 多一个的地方,像刚才那样继续取反,让 0 越来越少, 1 越来越多,直到整个串变为平衡串为止。整个过程显然是从 (S, k) 变换到 S' 的逆操作,因而最后得到的串正是 S 。当然,如果 S' 的第 k + 1 位是 1 ,上面的推理同样成立。至此,我们便完成了全部证明。

相关 [趣题 2n 平衡] 推荐:

趣题:2n位平衡01串平均有多少个平衡前缀?

- jia - Matrix67: My Blog
    这次的趣题来源于 UyHiP 今年八月份的谜题:概率均等地随机选取一个恰好含有 n 个 0 和 n 个 1 的 2n 位 01 串,这个 01 串平均会有多少个 0 和 1 个数相等的前缀(包括空串和整个串本身).     为了叙述简便起见,下面我们把所含 0 和 1 个数恰好相等的 01 串叫做平衡的 01 串.

头顶平衡物的…佐助[20p]

- Jo - 煎蛋
头顶平衡物的猫咱都见过了,可你见过顶着各种平衡物的……佐助么. 你看佐助的中分头,多么靓仔啊. 不过除了耍帅,这“决定胜负的分水岭”显然还有更高级的用途…….

经济结构不平衡的结果

- - 穿过记忆的河流
: 花旗跌成零头,不影响道琼斯指数快创历史新高,是因为由麦当劳、沃尔玛等构成的美国经济结构的健康. 而我们的股市从6124点跌到约2047点,银行股市值依然占26%,资产规模是GDP230%. 16家上市银行上半年实现净利润5452.29亿元,比其他2439家上市公司的净利润之和还高,这是经济结构不平衡的结果.

必须重提“生态平衡”

- - 中外对话新鲜出炉
蒋高明认为,人类要可持续生存下去,必须搞好与大自然的关系. 要接受最近几十年来“重发展、轻保护”造成各种生态失衡的教训,重新回到生态平衡的正确轨道上来. 上世纪70年代末,经济大潮开始席卷中国大地,各地掀起了向自然进军的浪潮,向草原要粮、向江河要效益、向沙漠进军、围湖造田、围海造田、退林还耕. 针对当时那些可能对自然生态带来毁灭的过激行为, 中国科学院学部委员、植物研究所研究员侯学煜先生及时向国人提出了要“尊重生态规律,维护生态平衡”的忠告.

用户体验是一种平衡

- - 扯氮集--上海魏武挥的博客 - 扯氮集--上海魏武挥的博客
互联网圈里流行一句话:将用户体验做到极致. 我不得不说的是,对于极大部分的创业者来说,这句话是会把你带到沟里去的. 大部分的互联网项目属于“免费”项目,且先不说这个项目未来有没有商业模式,单是一个去满足用户现下的体验,就是需要成本的. 片面地理解将用户体验做到极致,就意味着两点:1、成本上没有控制;2、产品进度上缺少控制.

趣题:不用相似怎么办?

- flycondor - Matrix67: My Blog
    我老早就写过一个经典的小学几何题. 如果你还没看过这个问题,你一定要去看看. 一个小学奥数老师曾经告诉我,当年带领学生参加这次竞赛时,领队老师们都没有想到这个问题的“小学生解法”,以至于开始质疑这道题是否超纲了. 看到答案后,老师们大为折服——这个问题确实有一个无需任何几何知识的妙解.     今天,同样的事情发生了.

44个精彩的物理趣题

- Henry - Matrix67: My Blog
    这个 Blog 几乎一直在讲数学趣题,却很少提到物理趣题. 其实,我个人觉得,物理也是相当好玩的(我是化学不好才选的文科). 隐约记得初中搞物理竞赛时,曾见过大量让人大呼过瘾的好题. 前几天看到了一个绝好的网站,里面有相当多的物理题目,让我激动了好一阵子. 我搜集整理了里面的一些好题,加上了我自己的一些补充,在这里和大家分享.

趣题:不动点与线性代数

- sdyy1990 - Matrix67: My Blog
    假设 X 、 Y 是两个有限集合,f:X→Y 和 g:Y→X 是两个函数. 求证:复合函数 g∘f 和 f∘g 拥有相同数量的不动点(也就是说 g(f(x)) = x 和 f(g(y)) = y 的解的个数相同).     下面先提供一个“正常”的解法. 观察函数 g∘f 的不动点,可以看出它有以下两个性质:首先,如果某个 x 是 g∘f 的不动点,即 x = g(f(x)) ,那么 f(x) = f(g(f(x))),这就说明 f(x) 是 f∘g 的一个不动点;另外,如果 x1 和 x2 是 X 中两个不同的不动点,则函数 f 不可能把它们映射到 Y 中的同一个元素,否则 g 没办法把它分别还原成 x1 和 x2.

趣题:随机折断的木棒

- Wang - FeedzShare
来自: Matrix67: My Blog - FeedzShare  . 发布时间:2011年02月06日,  已有 3 人推荐. 随机在中间选取一点,把这根木棒折断. 那么,短的那一截木棒平均有多长. 随机在中间选取一点,把这根木棒折断. 那么,长的那一截木棒平均有多长. 随机在中间选取一点,把这根木棒折断.

趣题:不用相似怎么办?

- 法法 - Matrix67: My Blog
    我老早就写过一个经典的小学几何题. 如果你还没看过这个问题,你一定要去看看. 一个小学奥数老师曾经告诉我,当年带领学生参加这次竞赛时,领队老师们都没有想到这个问题的“小学生解法”,以至于开始质疑这道题是否超纲了. 看到答案后,老师们大为折服——这个问题确实有一个无需任何几何知识的妙解.     今天,同样的事情发生了.