排列组合问题 这答案怎么来的
1个回答

我们把一般问题抽象成: 给定一个有2n+1行的菱形, 各行依次有1,2,...,n,n+1,n,...,2,1个位置, 从上往下只能读如题所述的相邻位置. 设一共有fn种连读方式. 那么, "龙腾虎跃今"构成有5=2*(2)+1行的菱形, 其连读方式数就是f2. 类似地, "今胜昔"的连读方式数是f1, "你追我赶齐争雄"的连读方式数是f3. 根据乘法原理, 欲求的总数是f2*f1*f3. 下面只需求出一般的fn.

在2n+1行的菱形中, 从一行读到下一行我们称为"走一步", 那么从第一行读至最后一行一共走2n步. 注意到最原始的出发位置和最终的结束位置在竖直垂直的方向上. 因为每一步要么向左走, 要么向右走, 所以向左和向右走的步数一样多! 于是, 每一种连读方式对应一个由n个"左"和n个"右"构成的序列. 计算这种序列的个数, 一如在2n个位置中选n个置"左", 其余n个置"右". 故总数fn={2n choose n}.

综上, 原问题的答案是f2*f1*f3={4 choose 2}{2 choose 1}{6 choose 3}=240.