观察
- 固定 L=6,把切口 m 从 1 拖到 5。总数一直是 13,两堆的大小却在变。公式里的两个乘积是不是始终等于两堆的数目?
- 看第二堆(跨过切口的那一堆):被描深的那一对横牌,总是盖住第 m 列和第 m+1 列。拿走它,剩下的是两段更短的长条。
- 把 m 拖到 1。等式变成了什么?你应该认出它:这就是斐波那契数列的递推式 FL+1=FL+FL−1。
- 取 L=7、m=3。等式右边两个乘积里都有同一个因数 F4=3。这说明 F8 是 F4 的倍数——这不是巧合。
斐波那契数列 {Fn}:F1=F2=1,Fn+2=Fn+1+Fn。用 1×2 的骨牌铺 2×n 的长条,铺法数恰好是 Fn+1:看最右边,竖放一块剩 2×(n−1),横放两块剩 2×(n−2)。上面的观察合起来,就是一条“加法公式”:
Fp+q=FpFq+1+Fp−1Fq.
先猜后证
2×8 的长条一共有 F9=34 种铺法。在第 4 列后面切一刀,切口干净(没有横牌跨过切口)的铺法有多少种?
种
先选定答案,才能看到结论。
✓ 猜对了!✗ 和你想的不一样——这正是值得停一下的地方。
切口干净,就是左边一个 2×4、右边一个 2×4 拼起来。每边都有 F5=5 种,任意搭配:5×5=25 种。
另一堆是 F4×F4=3×3=9 种,合起来 25+9=34。在上面的图里把 L 调成 8、m 调成 4 核对一下。
为什么
“数两次”:同一批铺法,先整体数,再按切口处的样子分两堆数。
-
要数的东西 2×7 的长条有 F8=21 种铺法。我们在第 m 列后面画一条虚线,问:铺法在这条线上断开还是连着?
F8=21
-
切口干净的一堆
-
跨过切口的一堆
-
两堆加起来
-
取 m = 1
-
取 p = q
再往前走一步,就得到斐波那契数列最漂亮的性质:求两项的最大公约数,可以转到下标上去求。
-
先证:倍数下标的项是倍数 对 k 归纳。k=1 显然。若 Fn∣Fkn,在加法公式里取 p=kn,q=n:两项都含因数 Fn。
F(k+1)n=FknFn+1+Fkn−1Fn
-
相邻两项互质
-
下标做一次“减法”
-
辗转相除搬到下标上
正方形拼长方形
边长为 1,1,2,3,5,… 的正方形,一块接一块贴在已有图形的长边上,总能严丝合缝地拼成一个长方形。加一块正方形,图形的两条边就从 Fn−1,Fn 变成 Fn,Fn+1——这正是递推式。数面积:
F12+F22+⋯+Fn2=FnFn+1.
右下角的读数是相邻两项的比 Fn+1/Fn。把 n 一格一格加大,它在 φ=21+5 的两侧来回跳,越跳越近。
先猜后证
FnFn+1 依次是 11,12,23,35,58,…。它和 φ≈1.618 的差,正负号怎样变化?
先选定答案,才能看到结论。
✓ 猜对了!✗ 和你想的不一样——这正是值得停一下的地方。
1<φ,2>φ,1.5<φ,1.666⋯>φ……交替出现。原因:若 rn=FnFn+1,则 rn+1=1+rn1。函数 x↦1+x1 是递减的,而且 φ=1+φ1,所以 rn<φ 推出 rn+1>φ,反过来也一样。
如果去掉一个条件
结论:G12+⋯+Gn2=GnGn+1,正方形拼成长方形 ← 还成立吗?
斐波那契数列的前两项都是 1:第二块正方形正好贴满第一块的一条边,此后每一块都贴得严丝合缝。
递推式不变,只把开头换成 G1=1,G2=3(得到 1,3,4,7,11,…)。拖动 n,看第二块贴上去之后发生了什么。
第二块比第一块高,留下一个 1×2 的空洞。此后每一块仍然贴满长边,可这个空洞永远补不上:G12+⋯+Gn2=GnGn+1−2。一般地,空洞的面积是 G1(G2−G1)。递推式只负责“后面贴得上”,开头两项决定“一开始有没有洞”。
练一练
求 F1+F2+⋯+F10。
提示 · 方向前几个和是 1,2,4,7,12。它们和斐波那契数差多少?
提示 · 方法把每一项写成差:Fk=Fk+2−Fk+1,然后相加,中间的项会消掉。
提示 · 第一步F1+⋯+Fn=(F3−F2)+(F4−F3)+⋯+(Fn+2−Fn+1)=Fn+2−F2。
完整解答F1+⋯+F10=F12−1=144−1=143。
用 1×2 的骨牌铺满 2×9 的长条,有多少种铺法?
提示 · 方向先算 2×1、2×2、2×3 各有几种,对齐下标。
提示 · 第一步要求的是 F10。数列:1,1,2,3,5,8,13,21,34,55。
求 F24 与 F36 的最大公约数。
提示 · 方法gcd(Fm,Fn)=Fgcd(m,n)。
提示 · 第一步gcd(24,36)=12,所以答案是 F12。
完整解答F12=144。(验证:F24=46368=144×322,F36=14930352=144×103683,而 gcd(322,103683)=1。)
证明:对一切正整数 n,Fn+12−FnFn+2=(−1)n。
提示 · 方向先验 n=1,2,3:1−2=−1,4−3=1,9−10=−1。
提示 · 方法对 n 归纳。把 n+1 时的式子里的 Fn+3 用递推式拆开。
提示 · 第一步Fn+22−Fn+1Fn+3=Fn+22−Fn+1(Fn+2+Fn+1)=Fn+2(Fn+2−Fn+1)−Fn+12。
完整解答由上一步,Fn+22−Fn+1Fn+3=Fn+2Fn−Fn+12=−(Fn+12−FnFn+2)=−(−1)n=(−1)n+1。n=1 时 F22−F1F3=1−2=−1 成立,由数学归纳法,结论对一切 n 成立。