解决不规则的递归序列?

时间:2015-11-10 01:50:06

标签: math recursion binary sequence

我之前正在玩一些数字序列的想法,并提出了一些我无法自己解决的问题(虽然我只在一小时左右的时间内完成了工作......)。寻找任何灵感或封闭形式的解决方案来解决这个问题!

以下是这个想法;对于索引n,n的二进制表示给出了列表中其他几个元素的索引;这些元素的总和是索引n的值。最初的两个元素都是1,二进制表示中的数字和索引是1索引的,而不是0索引的。

例如,第三个元素的索引为3,因此二进制表示为11;这意味着第三个元素应该是元素1和2的总和。因此,第三个元素的值为2.同样,第四个元素的二进制索引为100,因此它只是第三个元素,这意味着它的值为2同样。

计算前几个数字,我得到了序列:

1, 1, 2, 2, 3, 3, 4, 2, 3, 3, 4, 4, 5, 5, 6, ...

二进制表示部分给了我一个递归公式的想法:

floor(log_2(n)) = k (just getting max of k where 2^k <= n)
a_n = a_k + a_(n-k)

这只是从二进制表示中取出前1并将总和分成两部分:最高索引元素和其余元素。我们在这里定义a_0 = 0,为了完整性&#39;清酒。这意味着,例如,第4到第7个元素只是a_2添加到a_0到a_3。

现在已经有一段时间了,我还没有能够超越这个目标。有没有人对此有任何想法?

编辑:对于1索引感到抱歉!我在0索引这个和索引它之间进行了辩论,但我认为0索引它实际上改变了序列并使数学更加复杂。如果有人对0索引版本有任何建议,请告诉我!然后序列将是

1, 1, 1, 2, 1, 2, 2, 3, 2, 3, 3, 4, 3, 4, 4, 5, ... (starting from index 0)

1 个答案:

答案 0 :(得分:0)

OEIS对于这种事情来说是一个了不起的工具。它告诉我们你的0索引序列是base 2 digital convolution sequence。也许这会给你一个起点。