1137. 第 N 个泰波那契数

Tribonacci数

下载Mathematica笔记本

的tribonacci数字是的一般化斐波那契数由下式定义T_1 = 1T_2 = 1T_3 = 2,和递推方程

T_n = T_(n-1)+ T_(n-2)+ T_(n-3)
(1)

对于n> = 4(例如,Develin 2000)。他们代表n = 3了的情况下,斐波那契 ñ -工序数

使用上述索引约定的n = 01、2,...的前几个术语为0、1、1、2、4、7、13、24、44、81、149,...(OEIS A000073 ;但是采用备用索引约定T_0 = T_1 = 0T_2 = 1)。

前几个素数bonbonacci数是2,7,13,149,19341322569415713958901,...(OEIS A092836),其索引为3、5、6、10、86、97、214、801、4201、18698、96878, ...(OEIS A092835),没有其他人拥有n <= 291217(E. W. Weisstein,2009年3月21日)。

使用布朗准则,可以证明Tribonacci数是完整的。也就是说,每个正数都可以写为不同的tribonacci数的总和。此外,每个正数都有独特的Zeckendorf式展开式,作为不同的tribonacci数之和,并且该和不包含三个连续的tribonacci数。可以使用贪婪算法来计算类似Zeckendorf的展开。

ñ可以通过以下方式明确给出第tribonacci数 的精确表达式:

T_n=(α^(n + 1))/((α-β)(α-γ))+(β^(n + 1))/((β-α)(β-γ))+(γ^( n + 1))/(((gamma-alpha)(gamma-beta))
(2)
=(alpha ^ n)/(-alpha ^ 2 + 4alpha-1)+(beta ^ n)/(-beta ^ 2 + 4beta-1)+(gamma ^ n)/(-gamma ^ 2 + 4gamma-1) ,
(3)

(alpha,beta,gamma)多项式的三个根 在哪里

P(x)= x ^ 3-x ^ 2-x-1。
(4)

可以用更简洁的形式写成

T_n = r_1alpha ^ n + r_2beta ^ n + r_3gamma ^ n,
(5)

其中r_nñ多项式的次方根

Q(y)= 44y ^ 3-2y-1
(6)

and(alpha,beta,gamma)(r_1,r_2,r_3)Wolfram语言的 Root对象的顺序排列。

Tribonacci数也可以使用生成函数来计算

z /(1-zz ^ 2-z ^ 3)= 1 + z + 2z ^ 2 + 4z ^ 3 + 7z ^ 4 + 13z ^ 5 + 24z ^ 6 + 44z ^ 7 + 81z ^ 8 + 149z ^ 9 + ....
(7)

另一个明确的公式T_n也被赋予

[3({1/3(19 + 3sqrt(33))^(1/3)+1/3(19-3sqrt(33))^(1/3)+1/3} ^ n(586 + 102sqrt (33))^(1/3))/(((586 + 102sqrt(33))^(2/3)+ 4-2(586 + 102sqrt(33))^(1/3))],
(8)

其中[X]表示最接近的整数函数(Plouffe)。分子的第一部分 与的根有关x ^ 3-x ^ 2-x-1,但是分母的确定需要应用LLL算法

相邻项的比率趋向于正  (x ^ 3-x ^ 2-x-1)_1,即1.83929 ...(OEIS A058265),有时也称为tribonacci常数

通过考虑级数T_n(mod ķ),可以证明任何整数ķ都是T_n某些整数的一个因数ñ(Brenner 1954)。的最小值ñ为哪些ķ为因子k = 1,2,...被1,3,7,4,14,7,5,7,9,19,8,7,6,...(OEIS给出A112305)。

tribonacci常数在缓冲立方体,其双重五角二十面体四面体缓冲立方体-五角二十面体复合物的性质中极为突出。它甚至可以用来表示硬六边形熵常数

随着不同的初始值,该tribonacci序列开始为一种bCa + b + ca + 2b + 2c2a + 3b + 4c4a + 6b + 7c7a + 11b + 13c,...,这样做具有以下序列作为特殊情况。

一种bC信息系统顺序
001个00000、1、1、1、2、4、7、13、24、44、81、149,...
1个1个1个A0002131、1、1、3、5、9、17、31、57、105、193、355,...
01个0A0015900、1、0、1、2、3、6、11、20、37、68、125、230,...
31个30013、1、3、7、11、21、39、71、131、241、443、815,...
-12个2个A100683-1,2、2、3、7、12、22、41、75、138、254、467,...

 

泰波那契序列 Tn 定义如下: 

T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2

给你整数 n,请返回第 n 个泰波那契数 Tn 的值。

 

示例 1:

输入:n = 4
输出:4
解释:
T_3 = 0 + 1 + 1 = 2
T_4 = 1 + 1 + 2 = 4

示例 2:

输入:n = 25
输出:1389537

 

提示:

  • 0 <= n <= 37
  • 答案保证是一个 32 位整数,即 answer <= 2^31 - 1
package Solution1137;

import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;

class Solution {
	public int tribonacci(int n) {
		if (n == 0) {
			return 0;
		}
		if (n == 1) {
			return 1;
		}
		if (n == 2) {
			return 1;
		}
		int a = 0;
		int b = 1;
		int c = 1;
		int sum = 0;
		for (int i = 0; i < n - 2; i++) {
			sum = a + b + c;
			a = b;
			b = c;
			c = sum;
		}
		return sum;
	}

	public static void main(String[] args) {

		Solution sol = new Solution();
		int n = 4;

		System.out.println(sol.tribonacci(n));
	}

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值