一句话
设 an 是规模为 n 时的答案。别去硬数 an,而是问:最后一个元素怎么样? 每种情况拿掉它之后,剩下的往往正是规模 n−1、n−2 的同一个问题。
an=(情况一)+(情况二)=an−1+an−2
于是四步走:① 用 an 表示所求;② 亲手算出初值 a1,a2,…;③ 建立递推关系;④ 由递推求出 an(迭代、特征方程或直接算到需要的项)。
先猜后证
{1,2,…,10} 中,不含两个相邻整数的子集(包括空集)有多少个?
先选定答案,才能看到结论。
✓ 猜对了!✗ 和你想的不一样——这正是值得停一下的地方。
144。直接数要列一百多个子集;递推只要一张表:2,3,5,8,13,21,34,55,89,144。
-
设未知量,数初值 设 an 为 {1,…,n} 中不含相邻两数的子集个数。a1=2:∅,{1}。
a1=2
-
第二个初值
-
看最后一个元素
-
递推关系
-
求出来
第 1 站 · 有限集的计数:错排(卷一)
把 1,2,…,n 重新排列,使每个数都不在自己原来的位置上,叫错排。还是看最后一个数 n 去了哪里、谁来了位置 n。
-
小的情形 D1=0,D2=1(21),D3=2(231,312)。
D1=0, D2=1, D3=2
-
按 n 去了哪里分类
-
互换的一类
-
不互换的一类
-
递推
第 2 站 · 线性递推与特征方程(卷五)
递推式建好以后,若它是常系数线性的,特征方程直接给出通项。
例:用 0, 1, 2 组成长为 n 的串,不出现两个相邻的 0,有多少个?
第 1 / 4 步 -
看最后一位 设个数为 bn。最后一位是 1 或 2:前面任意合格,2bn−1;最后一位是 0:倒数第二位只能是 1 或 2,2bn−2。
bn=2bn−1+2bn−2
-
初值
-
特征方程
-
定系数
第 3 站 · 函数迭代(卷二)
f(n)(x)=f(f(n−1)(x)) 本身就是递推。关键是找一个量,让这条递推变简单。
一题多解
f(x)=1+xx(x>0),求 f(n)(x)。
先猜后证
f(2)(x)=1+x/(1+x)x/(1+x)=1+2xx,f(3)(x)=1+3xx。猜 f(n)(x)=1+nxx;若对 n 成立,则 f(n+1)(x)=1+x/(1+nx)x/(1+nx)=1+(n+1)xx。
代价要算几项才能看出规律,再补一次归纳。
取倒数,化成等差递推
记 un=f(n)(x)1。由 f(y)1=y1+1 得 un=un−1+1,u0=x1。所以 un=x1+n,f(n)(x)=1+nxx。
代价一眼看穿,不必猜。
第 4 站 · 函数方程的递归法(卷二)
定义在正整数上的函数方程,令其中一个变量取 1,就得到关于 f(n) 的递推。
例:f: N⁺ → R,f(1) = 1,f(m + n) = f(m) + f(n) + mn,求 f(n)
第 1 / 3 步 -
让一个变量取 1 令 m=1:f(n+1)=f(n)+f(1)+n=f(n)+n+1。
f(n+1)−f(n)=n+1
-
累加
-
验证
练一练
{1,2,…,8} 中不含两个相邻整数的子集(包括空集)有多少个?
提示 · 方法an=an−1+an−2,a1=2,a2=3。
提示 · 第一步a3=5, a4=8, a5=13。
完整解答a6=21, a7=34, a8=55。
5 个人各写一张贺卡,放在一起后每人随机取一张,没有人拿到自己写的贺卡的取法有多少种?
提示 · 方向这就是 5 个元素的错排数 D5。
提示 · 方法Dn=(n−1)(Dn−1+Dn−2),D1=0, D2=1。
提示 · 第一步D3=2(1+0)=2,D4=3(2+1)=9。
用 0,1,2 组成长为 5 的串(首位可以是 0),其中不出现两个相邻的 0,有多少个?
提示 · 方法bn=2bn−1+2bn−2,b1=3, b2=8。
提示 · 第一步b3=2⋅8+2⋅3=22,b4=2⋅22+2⋅8=60。
平面上 6 个圆,每两个圆都交于两点,且任意三个圆不过同一点。它们把平面分成多少块?
提示 · 方向设 n 个圆分成 rn 块。加入第 n 个圆时多出几块?
提示 · 方法第 n 个圆与前 n−1 个圆有 2(n−1) 个交点,把它分成 2(n−1) 段弧,每段弧把一块分成两块。
提示 · 第一步r1=2,rn=rn−1+2(n−1)(n≥2)。
完整解答rn=2+2(1+2+⋯+(n−1))=n2−n+2,r6=36−6+2=32。