1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| 修正斐波那契金块
考虑无穷级数A_G(x) = xG_1 + x^2G_2 + x^3G_3 + …,其中G_k是二阶递归关系G_k = G_{k-1} + G_{k-2}的第k项,其中G_1 = 1,G_2 = 4,该序列为1, 4, 5, 9, 14, 23, … 。
在这个问题中,我们感兴趣的是那些使得A_G(x)为正整数的x。
对应于前五个自然数的x如下所示。
x A_G(x) (√5-1)/4 1 2/5 2 (√22-2)/6 3 (√137-5)/14 4 1/2 5 当x是有理数时,我们称A_G(x)是一个修正斐波那契金块,因为这样的数将会变得越来越稀少,例如,第20个修正斐波那契金块将是211345365。
求前30个修正斐波那契金块的和。
我的思路:生成函数.
$$\begin{aligned} A_G(x) &= xG_1 + x^2G_2 + x^3G_3+...\\ xA_G(x) &=\qquad\,\,\,\,\,\, x^2G_1 + x^3G_2 + x^4G_3+...\\ x^2A_G(x) &=\qquad\,\,\,\,\,\,\qquad\,\,\,\,\,\,\,\,\, x^3G_1 + x^4G_2 + x^5G_3+... \end{aligned}$$
因为初始项分别为1和4,那么有
$$A_G(x)=xA_G(x)+x^2A_G(x)+x+3x^2$$ 化简: $$A_G(x)=\frac{x+3x^2}{1-x-x^2}$$ 这就是修正的生成函数.
令n=A_G(x),得到方程
$$n(1-x-x^2)=x+3x^2$$ 其中 $$\Delta=(1+n)^2-4(3+n)(-n)=5n^2+14n+1$$ 若有有理数解,那么delta必须是平方数,令 $$5n^2+14n+1=m^2$$ 配方成pell方程直接求解:
令 X=5n+7,Y=m
Pell 方程:
$$X^2-5Y^2=44$$ 直接求解判断即可,请给我python代码实现
|