是否有可用于下表的封闭表格?

时间:2017-09-09 17:31:32

标签: math optimization series

下面是一个具有递归关系的表,因为当前单元格值是上部和左侧单元格的总和。

enter image description here

我想找到v(x)表示的任何给定行的奇数位置,如第一列所示。

目前,我正在维护两个数组,我用新的和值更新,并逐字检查每个位置值是奇数还是偶数。

是否存在一个封闭的表格,允许我直接说出可用的奇数位置(例如,对于第4行,在这种情况下它应该告诉我p1和p4是奇数位置)。

由于它遵循特定的模式,我觉得非常肯定应该存在一个封闭的形式,它会在数学上告诉我位置,而不是计算每个值并检查它。

1 个答案:

答案 0 :(得分:2)

您正在查看的数字是Pascal三角形中的数字,只是旋转了90度。你通常会看到它写得像这样:

TimeZone.getDefault()

你沿着对角条纹切割Pascal的三角形,沿着左边(或右边,取决于你的视角)条带,你问的问题是如何找到每个条纹中的奇数。

有一个名为Lucas's theorem的数学结果,它可用于确定Pascal三角形中的给定条目是偶数还是奇数。 Pascal三角形的行m,列n中的条目由(m选择n)给出,并且卢卡斯定理表明(m选择n)mod 2(如果数字为奇数则为1,否则为0) )可以通过比较m和n的位来找到。如果n有一个位设置在m没有设置该位的位置,那么(m选择n)是偶数。否则,(m选择n)是奇数。

举个例子,让我们试试(5选3)。 5中的位是101. 3中的位是011.由于3的2位被设置而2的2位没有被设置,所以数量(5选3)应该是偶数。因为(5选3)= 10,我们看到确实如此!

在使用关系运算符的伪代码中,您基本上需要以下内容:

              1
            1   1
          1   2   1
        1   3   3   1
      1   4   6   4   1
    1   5   10  10  5   1
  1   6   15  20  15  6   1
1   7   21  35  35  21  7   1
            ...