【问题标题】:Fibonacci string array revised修改了斐波那契字符串数组
【发布时间】:2011-03-20 06:17:47
【问题描述】:

可能是我上次的作业理解错了,实际的问题描述应该是这样的:

我有一个数组:A B AB BAB ABBAB BABABBAB

数组每一项的个数以斐波那契数为基础。

将第n个字符串和第n+1个字符串放在一起,生成第n+2个字符串:

BABABBAB = BAB + ABBAB

那么从最后一个字母算起的第n个词的第x个(例如10^16个)字母是A还是B?例如。第6个字母是B,不仅在第6个词BABABBAB而且在后面的词ABBABBABABBAB

第 7 个字母是第 6 个词中的 A BABABBAB 以及后面的词 - ABBABBABABBAB

最鼓舞人心的消息是有人有 Θ(1) 解。

如果 [x / g] * g >= x - 1 那么它是 B 否则是A。 g 是中庸之道。

但他或她没有解释为什么它有效。

【问题讨论】:

  • 我只是认为:如果 x > f(n) 并且 x
  • Fibonacci string array 的可能重复项
  • 您应该使用新信息更新您的原始问题,而不是针对同一主题提出新问题。
  • @Paul R:这是一个与前一个不同的问题,尽管他们有相同的假设。
  • 你能发布一个链接到你从哪里得到的吗?我不认为它有效。 [6 / g] * g = 4.8,至少不是5。所以你会说它是 A,而实际上它是 B。

标签: arrays algorithm fibonacci


【解决方案1】:

查看关于斐波那契字的维基百科文章。那里给出了第 n 位的公式以及参考资料。

【讨论】:

  • +1:这个问题给出了斐波那契词的反面。可以用归纳法证明...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-21
  • 2014-09-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多