递推例题
归纳推理(递推法)
第十二讲归纳推理人们在探索某一类事物的性质或它们之间的关系的时候,经常从观察具体事物入手,通过分析、猜测、验证,找出这类事物的一般属性。
这种“从特殊到一般的推理方法”,叫做归纳法。
在研究某个问题的过程中,经过对若干次出现的现象的观察,有的人经过分析思考能很快地找到其中的某种规律,有的人却熟视无睹。
这就反映他们的归纳能力不同。
希望小同学们养成细观察、勤思考的习惯,不断提高归纳能力。
b5E2RGbCAP 例1 把1~1993这1993个自然数,按顺时针方向依次排列在一个圆圈上,如图12—1,从1开始沿顺时针方向,保留1,擦去2;保留3,擦去4;……<每隔一个数,擦去一个数),转圈擦下去。
求最后剩的是哪个数?p1EanqFDPw分析:如果依照题意进行操作,直到剩下一个数为止,实在是很困难。
我们先从简单情况研究,归纳出解决问题的规律,再应用规律解题。
DXDiTa9E3d如果是2个数1、2,最后剩下1;如果是3个数1、2、3,最后剩3;如果是4个数1、2、3、4,最后剩1;如果是5个数1、2、3、4、5,最后剩的是3;如果是6个数1、2、3、4、5、6,最后剩的是5;如果是7个数1、2、3、4、5、6、7,最后剩的是7;如果是8个数1~8,最后剩的是1。
RTCrpUDGiT我们发现当数的个数是2,4,8时,最后剩的都是1<操作的起始数)。
这是为什么呢?以8个数为例,数一圈,擦掉2,4,6,8,就相当于从1开始,还有4个数的情况,4个数时,从1开始,数一圈,又擦掉2个,还剩从1开始的两个数,擦掉1以外的数,最后剩1。
5PCzVD7HxA这样,数的个数是16,32,64,……,2n时,最后剩的都是起始数1。
当数的个数是3时,擦去2,就剩2个数,最后应剩下一步的起始数3;数的个数是5时,擦去2,剩4个数,最后也应剩下一步的起始数3。
jLBHrnAILg根据以上规律,如果有18个数,擦去2、4,剩下16个数,再擦下去,最后还应剩下一步的起始数5。
递归递推区别分析与例题总结
递归递推区别分析与例题总结递归与递推⽂章⽬录特点递归(recursive)运⾏过程中⾃我调⽤,求解过程分为回溯和递推两个过程,占⽤内存多(栈数先积累后收缩,有可能爆栈),代码简洁但低效。
尾递归和递归区别⬇function story() {从前有座⼭,⼭上有座庙,庙⾥有个⽼和尚,⼀天⽼和尚对⼩和尚讲故事:story() // 尾递归,进⼊下⼀个函数不再需要上⼀个函数的环境了,得出结果以后直接返回。
}function story() {从前有座⼭,⼭上有座庙,庙⾥有个⽼和尚,⼀天⽼和尚对⼩和尚讲故事:story(),⼩和尚听了,找了块⾖腐撞死了 // ⾮尾递归,下⼀个函数结束以后此函数还有后续,所以必须保存本⾝的环境以供处理返回值。
}尾递归省内存、⾼效(相当于(或者说递推?))Python⽆法在语⾔中实现尾递归优化(Tail Call Optimization, TCO),所以采⽤了for, while等特殊结构代替recursive的表述(优化是编译器⼲的,发现尾递归结构就给优化了)。
递推(iterative)效率⽐递归⾼,尽量递推,除⾮只能递归。
例题递推例⼦⼀般都是数学题。
重点是找递推公式(也太好偷懒了吧)平⾯分割问题直线分割平⾯(基本结论)如果当前有 n 条直线,新增加⼀条直线(第 n+1 条直线),可以多出来 n 个交点(新的直线和之前所有的直线都有交点),⽽多出来 n 个交点对应到可以多出 n+1 个平⾯(⽐如从两条线,⼜新增⼀条线时,新的线和两条线都相交,作⽤在三个区域上,对这三个区域切分,增加三个平⾯)。
也即:S n+1=S n+(n+1)=1+(n+1)(n+2)2当平⾯上已有n-1条曲线将平⾯分割成a n-1个区域后,第n-1条曲线每与曲线相交⼀次,就会增加⼀个区域,因为平⾯上已有了n-1条封闭曲线,且第n条曲线与已有的每⼀条闭曲线恰好相交于两点,且不会与任两条曲线交于同⼀点,故平⾯上⼀共增加2(n-1)个区域,加上已有的a n-1个区域,⼀共有a n-1+2(n-1)个区域。
常见递推数列通项公式的求法典型例题及习题
常见递推数列通项公式的求法典型例题及习题k=1,则an+1=an+f(n)为一阶线性递推数列,可用递推公式或特征方程求解。
例如已知a1=1,an+1=an+1/n,则有:an+1-an=1/nan-an-1=1/(n-1)an-a1=1+1/2+。
+1/n-1an=1+1/2+。
+1/n当k≠1时,设an+1+m=k(an+m),则有:an+1=kan+km-m比较系数得km-m=b,解得m=b/(k-1)an+m=b/(k-1)k^(n-1)+(a1-b/(k-1))k^n-1即为通项公式。
例2]an+1=kan+f(n)型。
当k=1时,an+1-an=f(n),若f(n)可求和,则可用累加消项的方法求得通项公式。
例如已知a1=1,an+1-an=1/(n(n+1)),则有:an+1-an=1/n-1/(n+1)an-an-1=1/1-1/2-1/2+1/3+。
+1/(n-1)-1/n-1/(n+1)an-a1=1-1/(n+1)an=2-1/n当k≠1且f(n)=an+b时,可设an+1+A(n+1)+B=k(an+An+B),解得A=a/(k-1),B=(2k-1)/(k-1)b-a,即可得通项公式。
例3]an+1=f(n)an型。
若f(n)=q(n+1)/n,则有:Cn=qCn-1Cn=q^nC0an=Cn/n!=q^nC0/n!即为通项公式。
1.已知数列 $\{a_n\}$ 中,$a_1=1$,$a_{n+1}=a_n+2a_{n-1}$,求 $a_n$。
解:根据递推式,可以列出 $a_2=3$,$a_3=7$,$a_4=15$,$a_5=31$,$a_6=63$,$a_7=127$,$\cdots$,可以猜测 $a_n=2^n-1$。
可以用数学归纳法证明:当 $n=1$ 时,$a_1=1=2^1-1$,假设 $a_k=2^k-1$,则 $a_{k+1}=a_k+2a_{k-1}=2^k-1+2\cdot 2^{k-1}-2=2^{k+1}-1$,所以 $a_n=2^n-1$。
第三讲——递推计数
第三讲——递推计数第三讲递推计数知识精讲有许多计数问题很复杂,直接处理比较困难,此时硬碰硬是不行的.一个比较有效的策略是退而求其次:先考虑该问题的简单情形,看看简单情形如何处理;在解决了简年情形后,再考虑如何利用简单情形的结论来解决更复杂的问题……这个由简单到复杂的推导过程就叫“递推”。
那如何利用“递推法”来解决计数问题呢?下面我们就来看几个例子.例1、老师给小高布置了 12篇作文,规定他每天至少写1篇.如果小高每天最多能写3篇,那么共有多少种不同的完成方法?(小高每天只能写整数篇)练习1 、一个楼梯一共有12级台阶,规定每步可以迈二级台阶或三级台阶,走完这12级台阶共有多少种不同的走法?例2、用10个1×3的长方形纸片覆盖一个10×3的方格表,共有多少种覆盖方法?练习2、用7个1×2的长方形纸片覆盖一个7×2的方格表,共有多少种覆盖方法?例3、在一个平面上画出100条线,最多可以把平面分成几部分?练习3、如果在一个圆内画出50条直线,最多可以把圆分成多少例题4四个人分别穿着红、黄、绿、蓝四种颜色的球衣练习传球,每人都可以把球传给另外三个人中的任意一个.先由红衣人发球,并作为第1次传球, 经过8次传球后球仍然回到红衣人手中.请问:整个传球过程共有多少种不同的可能?练习4三个人分别穿着红、黄、蓝三种颜色的球衣练习传球,每人都可以把球传给另外两个人中的任意一个.先由红衣人发球,并作为第1次传球,经过7次传球后传到蓝衣人手中.请问:整个传球过程共有多少种不同的可能?极限挑战例题5 一个七位数,每一位都是1、2或者3,而且没有连续的两个1,这样的七位数一共有多少个?例题6 圆周上有10个点1021,,A A A ,以这些点为端点连接5条线段,要求线段之间没有公共点,共有多少种连接方式?作业1、有10个蛋黄派,萱萱每天吃1个或2个,那么共有多少种不同的吃法?2、甲、乙两人玩抓石子游戏,共有12个石子,甲先乙后轮流抓取,每次可以抓取其中的2个3个或4个,直到最后抓取完毕为止.那么共有多少种抓取石子的方案?3、用直线把一个平面分成100部分,至少要在平面上画几条直线?4、一个七位数,它由数字0、1、2、3、4组成,相邻位置上的数字不相同,并且个位数字是2。
基本算法2-递推法实例
一般地,设原来的符合题意的n-1条直线把这平面分成 个区域,再增加一条直线l,就变成n条直线,按题设条 件,这l必须与原有的n-1条直线各有一个交点, 且这n-1个交点 及原有的交点互不重合。这n-1个交点把l划分成n个区间,每 个区间把所在的原来区域一分为二,所以就相应比原来另增 了n个区域,即:
const max=100; var
f1,f2,s:array[1..max] of longint; i,j,k,l,n:longint; begin readln(n); f1[max]:=0 ; f1[max-1]:=1; {F0=10} for i:= 1 to n do
begin f2:=f1; k:=0; { ×7 } for j:= max downto 1 do begin k:=k+f1[j]*7; f1[j]:=k mod 10; k:=k div 10; end;
end.
var a,b:array[1..100] of longint; i,j,n:longint;
begin readln(n); a[100]:=4 ; b[100]:=1; for i:= 2 to n do begin for j:= 100 downto 1 do b[j]:=b[j]*2; for j:= 100 downto 2 do if b[j]>=10 then begin b[j-1]:=b[j-1]+b[j] div 10 ; b[j]:=b[j] mod 10; end; for j:= 100 downto 1 do begin a[j]:=a[j]+b[j]; if a[j]>=10 then begin a[j-1]:=a[j-1]+a[j] div 10 ; a[j]:=a[j] mod 10; end; end; end; j:=1; while a[j]=0 do j:=j+1; for i:= j to 100 do write(a[i]) ;
奥赛例题及答案—递推法、类比法和估算法
练习题七:递推法、类比法和估算法(一)递推法A1、如图6—6所示,一固定的斜面,倾角θ = 45°,斜面长L = 2.00米。
在斜面下端有一与斜面垂直的挡板。
一质量为m 的质点,从斜面的最高点沿斜面下滑,初速度为零。
下滑到最底端与挡板发生弹性碰撞。
已知质点与斜面间的动摩擦因数μ = 0.20 ,试求此质点从开始到发生第11次碰撞的过程中运动的总路程。
解析:因为质点每次下滑均要克服摩擦力做功,且每次做功又不相同,所以要想求质点从开始到发生n 次碰撞的过程中运动的总路程,需一次一次的求,推出通式即可求解。
设每次开始下滑时,小球距档板为s ,则由功能关系: μmgcos θ (s 1 + s 2) = mg (s 1-s 2)sin θ μmgcos θ (s 2 + s 3) = mg (s 2-s 3)sin θ即有:21s s =32s s = … =sin cos sin cos θ-μθθ+μθ=23由此可见每次碰撞后通过的路程是一等比数列,其公比为23∴在发生第11次碰撞过程中的路程:s = s 1 + 2s 2 + 2s 3 + … + 2s 11 = 2 (s 1 + s 2 + s 3 + … + s 11)-s 1 = 2×1112s 1()3213⎡⎤-⎢⎥⎣⎦--s 1 = 10-12× (23)11 = 9.86mA2、小球从高h 0 = 180m 处自由下落,着地后跳起又下落,每与地面相碰一次,速度减小1n(n= 2),求小球从下落到停止经过的总时间和通过的总路程。
(g 取10m/s 2)解析:小球从h 0高处落地时,速率v 0 =02gh = 60m/s 第一次跳起时和又落地时的速率v 1 =0v 2 第二次跳起时和又落地时的速率v 2 =02v 2 ……第m 次跳起时和又落地时的速率v m =m v 2 每次跳起的高度依次为h 1 =21v 2g =02h n,h 2 =22v 2g =04h n ,……,通过的总路程Σs = h 0 + 2h 1 + 2h 2 + … + 2h m + … = h 0 +022h n (1 +21n +41n + … +2m 21n -+ …)= h 0 +022h n 1-= h 0⋅22n 1n 1+-=53h 0 = 300m经过的总时间为Σt = t 0 + t 1 + t 2 + … + t m + … =0v g +12v g + … +m 2vg+ …=0v g[1 + 2⋅1n + … + 2⋅(1n )m+ …]=0v g ⋅n 1n 1+-=03v g=18s A3、使一原来不带电的导体小球与一带电量为Q 的导体大球接触,分开之后,小球获得电量q 。
高中数学选择性必修二 4 1 2数列的递推公式(知识梳理+例题+变式+练习)(含答案)
4.1.2 数列的递推公式知识点一数列的递推公式如果一个数列的相邻两项或多项之间的关系可以用一个式子来表示,那么这个式子叫做这个数列的递推公式.数列递推公式与通项公式的关系:递推公式表示a n 与它的前一项a n -1(或前n 项)之间的关系,而通项公式表示a n 与n 之间的关系. 要点二 a n 与S n 的关系1.前n 项和S n :把数列{a n }从第1项起到第n 项止的各项之和,称为数列{a n }的前n 项和,记作S n ,即S n =12n a a a +++ 2.a n 与S n 的关系:a n =11,1,2n n S n S S n -=⎧⎨-≥⎩【基础自测】1.判断正误(正确的画“√”,错误的画“×”) (1)根据通项公式可以求出数列的任意一项.( ) (2)有些数列可能不存在最大项.( ) (3)递推公式是表示数列的一种方法.( ) (4)所有的数列都有递推公式.( ) 【答案】(1)√(2)√(3)√(4)×2.数列{a n }中,a n +1=a n +2-a n ,a 1=2,a 2=5,则a 5=( ) A .-3 B .-11 C .-5 D .19 【答案】D【解析】a 3=a 2+a 1=5+2=7,a 4=a 3+a 2=7+5=12,a 5=a 4+a 3=12+7=19,故选D. 3.数列{a n }中,a n =2n 2-3,则125是这个数列的第几项( ) A .4 B .8 C .7 D .12 【答案】B【解析】令2n 2-3=125得n =8或n =-8(舍),故125是第8项.故选B. 4.已知数列{a n }的前n 项和为S n =n 2,则a n =________. 【答案】2n -1【解析】当n ≥2时,a n =S n -S n -1=n 2-(n -1)2=n 2-n 2+2n -1=2n -1.当n =1时,a 1=S 1=1满足上式,所以{a n }的通项公式为a n =2n -1.题型一 数列中项与项数关系的判断(1)写出数列的一个通项公式,并求出它的第20项;(2)判断42和10是不是该数列中的项?若是,指出是数列的第几项,若不是,请说明理由.【解析】(1)由于22=8,所以该数列前4项中,根号下的数依次相差3,所以它的一个通项公式为a n =3n -1;a 20=3×20-1=59.(2)令3n -1=42,两边平方得3n =33,解得n =11,是正整数令3n -1=10,两边平方得n =1013,不是整数.∴42是数列的第11项,10不是数列中的项. 【方法归纳】(1)由通项公式写出数列的指定项,主要是对n 进行取值,然后代入通项公式,相当于函数中,已知函数解析式和自变量的值求函数值.(2)判断一个数是否为该数列中的项,其方法是可由通项公式等于这个数求方程的根,根据方程有无正整数根便可确定这个数是否为数列中的项.(3)在用函数的有关知识解决数列问题时,要注意它的定义域是N *(或它的有限子集{1,2,3,…,n })这一约束条件.【跟踪训练1】已知数列{a n }的通项公式为a n =3n 2-28n . (1)写出此数列的第4项和第6项;(2)问-49是否是该数列的一项?如果是,应是哪一项?68是否是该数列的一项呢? 【解析】(1)a 4=3×42-28×4=-64, a 6=3×62-28×6=-60.(2)由3n 2-28n =-49解得n =7或n =73(舍去),所以-49是该数列的第7项.由3n 2-28n =68解得n =-2或n =343,所以68不是该数列的一项.题型二 已知S n 求a n例2 设S n 为数列{a n }的前n 项和,S n =2n 2-30n .求a n . 【解析】当n ≥2时,a n =S n -S n -1=2n 2-30n -[2(n -1)2-30(n -1)]=4n -32 当n =1时,a 1=S 1=-28,适合上式, 所以a n =4n -32.借助a n =⎩⎪⎨⎪⎧S 1,(n =1)S n -S n -1(n ≥2)【变式探究1】将本例中的“S n =2n 2-30n ”换为“S n =2n 2-30n +1”,求a n . 【解析】当n =1时,a 1=S 1=2×1-30×1+1=-27. 当n ≥2时,a n =S n -S n -1=2n 2-30n +1-[2(n -1)2-30(n -1)+1] =4n -32.验证当n =1时,上式不成立∴a n =⎩⎪⎨⎪⎧-27,n =14n -32,n ≥2.方法归纳已知数列{a n }的前n 项和公式S n ,求通项公式a n 的步骤: (1)当n =1时,a 1=S 1.(2)当n ≥2时,根据S n 写出S n -1,化简a n =S n -S n -1.(3)如果a 1也满足当n ≥2时,a n =S n -S n -1的通项公式,那么数列{a n }的通项公式为a n =S n -S n -1;如果a 1不满足当n ≥2时,a n =S n -S n -1的通项公式,那么数列{a n }的通项公式要分段表示为a n =⎩⎪⎨⎪⎧S 1,n =1S n -S n -1,n ≥2.【跟踪训练2】已知数列:a 1+3a 2+32a 3+…+3n -1a n =n 3,求a n .【解析】当n ≥2时,由a 1+3a 2+32a 3+…+3n -1a n =n 3,得a 1+3a 2+32a 3+…+3n -2a n -1=n -13,两式相减得3n -1a n =n 3-n -13=13,则a n =13n .当n =1时,a 1=13,满足a n =13n ,所以a n =13n .题型三 由数列递推公式求通项公式【例3】已知数列{a n }中,a 1=1,a n +1=a n +n +1,则a n =________.【答案】n (n +1)2【解析】∵a n +1=a n +n +1,a 1=1,∴a n +1-a n =n +1, ∴a n -a n -1=n ,a n -1-a n -2=n -1,…,a 2-a 1=2 以上式子相加得: a n -a 1=2+3+…+n∴a n =1+2+3+…+n =n (n +1)2.变形为:a n +1-a n =n +1,照此递推关系写出前n 项中任意相邻两项的关系,这些式子两边分别相加可求. 【变式探究2】若将“a n +1=a n +n +1”改为“a n +1=nn +1a n”,则a n =________.【答案】1n【解析】∵a n +1=n n +1a n ,a 1=1,∴a n +1a n =nn +1,∴a n a n -1=n -1n ,a n -1a n -2=n -2n -1,…,a 2a 1=12,以上式子两边分别相乘得:a n a 1=n -1n ×n -2n -1×…×12=1n∴a n =1n a 1=1n .【方法归纳】由数列的递推公式求通项公式时,若递推关系为a n +1=a n +f (n )或a n +1=g (n )·a n ,则可以分别通过累加法或累乘法求得通项公式,即:(1)累加法:当a n =a n -1+f (n )时,常用a n =a n -a n -1+a n -1-a n -2+…+a 2-a 1+a 1求通项公式.(2)累乘法:当a n a n -1=g (n )时,常用a n =a n a n -1·a n -1a n -2·…·a 2a 1·a 1求通项公式.【跟踪训练3】在数列{a n }中,a 1=2,a n +1=a n +ln ⎝⎛⎭⎫1+1n ,则a n =( ) A .2+ln n B .2+(n -1)ln n C .2+n ln n D .1+n +ln n 【答案】A【解析】∵在数列{a n }中,a n +1-a n =ln ⎝⎛⎭⎫1+1n =ln n +1n∴a n =(a n -a n -1)+(a n -1-a n -2)+…+(a 2-a 1)+a 1=ln n n -1+ln n -1n -2+…+ln 21+2=ln ⎝⎛⎭⎪⎫n n -1·n -1n -2·…·21+2=2+ln n .故选A.【易错辨析】数列中忽视n 的限制条件致误【例4】设S n 为数列{a n }的前n 项和,log 2(S n +1)=n +1,则a n =________.【答案】⎩⎪⎨⎪⎧3,n =12n ,n ≥2【解析】由log 2(S n +1)=n +1得S n +1=2n +1,∴S n =2n +1-1当n ≥2时a n =S n -S n -1=2n +1-1-2n +1=2n .当n =1时,a 1=S 1=3.经验证不符合上式.∴a n =⎩⎪⎨⎪⎧3,n =12n ,n ≥2.【易错警示】1. 出错原因忽视n =1的情况致错,得到错误答案:a n =2n . 2. 纠错心得已知a n 与S n 的关系求a n 时,常用a n =S n -S n -1(n ≥2)来求a n ,但一定要注意n =1的情况.一、单选题1.设数列{}n a 的前n 项和为n S ,11a =,2(1)nn S a n n =+-,(*n N ∈),若()22112n S S S n n+++--2013=,则n 的值为( ). A .1007 B .1006 C .2012 D .2014【答案】A 【分析】根据数列n a 与n S 的关系证得数列n S n ⎧⎫⎨⎬⎩⎭是以1为首项,以2为公差的等差数列,利用等差数列的前n 项和公式求出题中的式子,化简计算即可. 【解析】2(1)nn S a n n=+-, 12(1)(2)nn n S S S n n n-∴-=+-, 整理可得,1(1)2(1)n n n S nS n n ---=-, 两边同时除以(1)n n -可得12(2)1n n S S n n n --=-,又111S = ∴数列n S n ⎧⎫⎨⎬⎩⎭是以1为首项,以2为公差的等差数列,2321(1)23nS S S S n n∴++++-- 2(1)12(1)2n n n n -=⨯+⨯-- 22(1)n n =--21n =-,由题意可得,212013n -=, 解得1007n =. 故选:A .2.南宋数学家杨辉在《解析九章算法》和《算法通变本末》中,提出了一些新的垛积公式,所讨论的高阶等差数列与一般等差数列不同,前后两项之差并不相等,但是逐项差数之差或者高次差成等差数列,如数列1,3,6,10,前后两项之差得到新数列2,3,4,新数列2,3,4为等差数列,这样的数列称为二阶等差数列.对这类高阶等差数列的研究,在杨辉之后一般称为“垛积术”.现有高阶等差数列,其前7项分别为3,4,6,9,13,18,24,则该数列的第19项为( ) A .171 B .190 C .174 D .193【答案】C 【分析】根据题意可得数列3,4,6,9,13,18,24,⋯,满足:11(2)n n a a n n --=-,13a =,从而利用累加法即可求出n a ,进一步即可得到19a 的值. 【解析】3,4,6,9,13,18,24,后项减前项可得1,2,3,4,5,6,所以()1112,3n n a a n n a --=-≥=, 所以()()()112211n n n n n a a a a a a a a ---=-+-++-+()()1213n n =-+-+++()()()111133,222n n n n n -+⋅--=+=+≥.所以19191831742a ⨯=+=. 故选:C3.在数列{}n a 中,11a =,121nn n a a +-=-,则9a =( )A .512B .511C .502D .503【答案】D 【分析】利用累加法先求出通项即可求得答案. 【解析】因为11a =,121nn n a a +-=-,所以()()()121321n n n a a a a a a a a -=+-+-++-=()()()21211(21)21211222(1)2n n n n n --+-+-++-=++++--=-,所以9929503a =-=.故选:D. 4.数列23,45,69,817,1033,…的一个通项公式为( )A .221n n n a =+ B .2221n n n a +=+ C .1121n n n a ++=-D .12222n n n a ++=+【答案】A 【分析】根据数列中项的规律可总结得到通项公式. 【解析】1221321⨯=+,2422521⨯=+,3623921⨯=+,48241721⨯=+,510253321⨯=+, ∴一个通项公式为:221n nna =+. 故选:A.5.下列命题不正确的是( )A 的一个通项公式是n aB .已知数列{},3n n a a kn =-,且711a =,则1527a =C .已知数列{}n a 的前n 项和为()*,25n n n S S n N =-∈,那么123是这个数列{}n a 的第7项D .已知()*1n n a a n n N +=+∈,则数列{}n a 是递增数列【答案】C 【分析】A:根据被开方数的特征进行判断即可;B:运用代入法进行求解判断即可;C:根据前n项和与第n项之间的关系进行求解判断即可;D:根据递增数列的定义进行判断即可.【解析】对于A31⇒⨯na⇒=A正确;对于B,3na kn=-,且7151122327na k a n a=⇒=⇒=-⇒=,B正确;对于C,()*25nnS n N=-∈,13a=-,当2,n n N*≥∈时,111222n n nn n na S S---=-=-=,12127n-=,无正整数解,所以123不是这个数列{}n a的第7项,C错误;对于D.由()*11,0n n n na a n n N a a n++=+∈-=>,易知D正确,故选:C.6.已知数列{}n a的前n项和2nS n=,则数列11n na a+⎧⎫⎨⎬⎩⎭的前99项和为()A.1168B.1134C.198199D.99199【答案】D【分析】先根据11,2,1n nnS S naS n--≥⎧=⎨=⎩,求出21na n=-,然后利用裂项相消求和法即可求解.【解析】解:因为数列{}n a的前n项和2nS n=,2121nS n n-=-+,两式作差得到21(2)na n n=-≥,又当1n=时,21111a S===,符合上式,所以21na n=-,111111(21)(21)22121n na a n n n n+⎛⎫==-⎪-+-+⎝⎭,所以12233411111n na a a a a a a a+++++=111111111111233557212122121n n n n n ⎡⎤⎛⎫⎛⎫⎛⎫⎛⎫⎛⎫-+-+-++-=-= ⎪ ⎪ ⎪ ⎪ ⎪⎢⎥-+++⎝⎭⎝⎭⎝⎭⎝⎭⎝⎭⎣⎦, 所以12233499100111199992991199a a a a a a a a ++++==⨯+. 故选:D.7.数列{}n a 中的前n 项和22nn S =+,数列{}2log n a 的前n 项和为n T ,则20T =( ).A .190B .192C .180D .182【答案】B 【分析】根据公式1n n n a S S -=-计算通项公式得到14,12,2n n n a n -=⎧=⎨≥⎩,故2,11,2n n b n n =⎧=⎨-≥⎩,求和得到答案.【解析】当1n =时,111224a S ==+=;当2n ≥时,()11112222222n n n n n n n n a S S ----=-=+-+=-=,经检验14a =不满足上式,所以14,12,2n n n a n -=⎧=⎨≥⎩, 2log n n b a =,则2,11,2n n b n n =⎧=⎨-≥⎩,()201911921922T ⨯+=+=. 故选:B.8.已知数列{}n a 满足11a =,()()()11*12n n n n a a a a n N n n ++-=∈++,则10a 的值为( )A .1231B .2231C .1D .2【答案】B 【分析】首先根据已知条件得到1111112n n a a n n +-=-++,再利用累加法求解即可. 【解析】 因为()()()*1112n n n n a a n n n N a a ++++=∈-,所以()()()*11112nn n n a a n N a a n n ++-=∈++, 所以()()111111212n n n n a a a a n n n n ++-==-++++,即1111112n n a a n n +-=-++,当2n ≥时,11221111111n n n n a a a a a a ---⎛⎫⎛⎫⎛⎫-+-+⋯+- ⎪ ⎪ ⎪⎝⎭⎝⎭⎝⎭1111111123n n n n ⎛⎫⎛⎫⎛⎫=-+-+⋯+- ⎪⎪+ ⎪ ⎝⎭⎝⎭-⎝⎭, 1111121n a a n -=-+,解得()11131122122n n n a n n +=-+=≥++ 当1n =时,上式成立,故2231n n a n +=+,故102022230131a +==+. 故选:B二、多选题9.数列{a n }的前n 项和为S n ,()*111,2N n n a a S n +==∈,则有( )A .S n =3n -1B .{S n }为等比数列C .a n =2·3n -1D .21,123,2n n n a n -=⎧=⎨⋅≥⎩【答案】ABD 【分析】根据11,1,2n n n S n a S S n -=⎧=⎨-≥⎩求得n a ,进而求得n S 以及判断出{}n S 是等比数列.【解析】依题意()*111,2N n n a a S n +==∈,当1n =时,2122a a ==, 当2n ≥时,12n n a S -=,11222n n n n n a a S S a +--=-=,所以13n n a a +=,所以()2223232n n n a a n --=⋅=⋅≥,所以21,123,2n n n a n -=⎧=⎨⋅≥⎩. 当2n ≥时,1132n n n a S -+==;当1n =时,111S a ==符合上式,所以13n n S -=.13n nS S +=,所以数列{}n S 是首项为1,公比为3的等比数列. 所以ABD 选项正确,C 选项错误.故选:ABD10.已知数列{}n a 的前n 项和22n n nS +=,数列{}n b 满足1n n b a =,若n b ,2n b +,n k b +(k *∈N ,2k >)成等差数列,则k 的值不可能是( ) A .4 B .6 C .8 D .10【答案】AD 【分析】利用n a 与n S 的关系,求得n a ,进而求得n b ,然后根据n b ,2n b +,n k b +(k *∈N ,2k >)成等差数列,得到n 与k 的关系,进而求得答案.【解析】当1n =时,11212a S ===,当2n ≥时,()()2211122n n n n n n n a S S n --+++=-=-=,故n a n =(N n *∈),11n n b a n ==(N n *∈).因为n b ,2n b +,n k b +(N k *∈,2k >)成等差数列,所以22n n n k b b b ++=+,即2112n n n k=+++,所以48422n k n n ==+--,(2k >,N k *∈),从而2n -的取值为1,2,4,8,则对应的k 的值为12,8,6,5,所以k 的值不可能是4,10, 故选:AD .第II 卷(非选择题)请点击修改第II 卷的文字说明三、填空题11.数列{}n a 的前n 项的和231n S n n =++,n a =________.【分析】利用2n 时,1n n n a S S -=-求n a ,同时注意11a S =. 【解析】解析:由题可知,当2n 时,1n n n a S S -=-22313(1)(1)1n n n n ⎡⎤=++--+-+⎣⎦62n =-,当1n =时,113115a S ==++=,故答案为:5,162,2n n n =⎧⎨-⎩.12.设数列{a n }的前n 项和为S n =2n -3,则a n =________.【答案】【解析】解析 当n ≥2时,a n =S n -S n -1=(2n -3)-[2(n -1)-3]=2,又a 1=S 1=2×1-3=-1,故a n =13.已知数列{}n a 的前n 项和为n S ,若n n a b S +=,2414a a =,则数列{}n a 的通项公式为___________. 【答案】212n -⎛⎫ ⎪⎝⎭或212n -⎛⎫- ⎪⎝⎭【分析】 由n n a b S +=可得数列{}n a 是公比为12的等比数列,然后根据2414a a =求出21a =即可. 【解析】因为n n a b S +=,所以当1n =时,1112b a S a +==,即12b a = 当2n ≥时,11n n b a S --+=,然后可得10n n n a a a --+=,即()1122n n a a n -=≥ 所以数列{}n a 是公比为12的等比数列 所以21124b a a ==,4111816a a b ==, 因为22411644a ab ==,所以4b =±, 当4b =时, 21a =,2221122n n n a a --⎛⎫⎛⎫== ⎪ ⎪⎝⎭⎝⎭当4b =-时, 21a =-,2221122n n n a a --⎛⎫⎛⎫==- ⎪ ⎪⎝⎭⎝⎭故答案为:212n -⎛⎫ ⎪⎝⎭或212n -⎛⎫- ⎪⎝⎭四、解答题 14.已知数列{}n a 的前n 项和()2*2n S n kn k N =-+∈,且n S 的最大值为4.(1)求常数k 及n a ;(2)设()17n n b n a =-,求数列{}n b 的前n 项和n T . 【答案】(1)2k =,25n a n =-+ (2)2(1)n n T n =+ 【分析】(1)由于()222*2()n S n kn n k k k N =-+=--+∈,则可得24k =,从而可求出2k =,然后利用11,1,2n n n S n a S S n -=⎧=⎨-≥⎩求出n a , (2)由(1)可得11121n b n n ⎛⎫=- ⎪+⎝⎭,然后利用裂项相消求和法求解即可 (1)因为()222*2()n S n kn n k k k N =-+=--+∈,所以当n k =时,n S 取得最大值2k , 所以24k =,因为*k N ∈,所以2k =,所以24n S n n =-+,当1n =时,11143a S ==-+=,当2n ≥时,2214[(1)4(1)]25n n n a S S n n n n n -=-=-+---+-=-+,13a =满足上式,所以25n a n =-+(2)由(1)可得()()11111177252(1)21n n b n a n n n n n n ⎛⎫====- ⎪-+-++⎝⎭, 所以1111111112222321n T n n ⎛⎫⎛⎫⎛⎫=⨯-+⨯-+⋅⋅⋅+⨯- ⎪ ⎪ ⎪+⎝⎭⎝⎭⎝⎭ 111212(1)n n n ⎛⎫=-= ⎪++⎝⎭ 15.已知数列{}n a 满足()23*1232222n n a a a a n n N ++++=∈,求数列{}n a 的通项公式.【答案】12n na =【分析】 先根据前n 项和与通项的关系得12n n a =,再检验1n =时也满足条件即可求得答案. 【解析】因为23*1232222()n n a a a a n n N ++++=∈①, 所以()2311231222212n n a a a x a n n --++++=-≥②, ①-②得21(2)n n a n =≥,即 12n n a =, 当1n =时,112a =,满足12n n a =, 所以12n na = 16.已知数列{}n a 的前n 项和112n n S ⎛⎫=+ ⎪⎝⎭,求数列{}n a 的通项公式. 【答案】312122n n n a n ⎧=⎪⎪=⎨⎛⎫⎪-≥ ⎪⎪⎝⎭⎩ 【分析】根据n S 与n a 的关系式,求解数列的通项公式即可.需要注意验证首项.【解析】()111111222n n n n S S n --⎛⎫⎛⎫=+∴=+≥ ⎪ ⎪⎝⎭⎝⎭①②-①②得()122n n a n ⎛⎫=-≥ ⎪⎝⎭ 根据题意,1111311222a S ⎛⎫==+=≠- ⎪⎝⎭ 所以数列的通项公式为312122n n n a n ⎧=⎪⎪=⎨⎛⎫⎪-≥ ⎪⎪⎝⎭⎩。
【精品】五年级下册数学试题:培优专题讲练:第5讲 巧用递推 人教版
第5讲巧用递推方法和技巧学会实际操作、计算、观察、分析、,归纳出规律,并应用这些规律解决实际问题。
例题精讲A级基础点睛【例1】班主任需要在最短的时间内,向全班同学发出紧急通知。
假定用电话联系,每通知一个同学需要1分钟,第1分钟由班主任通知同学C,第2分钟由班主任和C同学通知其他的两位同学,以此类推,如果没有重复,那么,5分钟共通知了多少名同学?分析与解第一分钟通知1名同学:第二分钟通知2名同学;第三分钟通知4(2×2=4)名同学;第四分钟通知8(2×2×2=8)名同学;第五分钟通知16(2×2×2×2=16)名同学。
所以,共通知了1+2+4+8+16=31(名)同学。
做一做1 把一张16厘米×32厘米的纸裁去一半,再将其中的一张裁去一半……继续这样裁下去,直到得到一张1厘米×2厘米的纸为止。
那么,一共需裁多少次?【例2】将一个圆形纸片用直线划分成大小不限的若干块小纸片,如果要分成不少于50块小纸片,那么至少要画多少条直线?请说明。
分析与解我们通过列表来观察:直线条数纸片最多划分成的块数1 1+12 1+1+23 1+1+2+34 1+1+2+3+45 1+1+2+3+4+5…………不难看出,表中每行右边的数等于1加上从1到行数的所有整数的和。
我们把问题转化为:自第几行起,右边的数不小于50?我们知道1+1+2+3+…+10=56,1+1+2+3+…+9=46,可见第9行右边还不到50,而第10行右边已经超过50了。
答:至少要画10条直线。
做一做2 若把一个菠萝竖直切成11块,问:最少要切多少刀?【例3】如右图,在2×2的方格中画一条直线,最多可穿过3个方格,在3×3的方格中画一条直线,最多可穿过5个方格,那么在10×10的方格中画一条直线,最多可穿过多少个方格?分析与解采用递推的方法,从中找出规律和答案。
高斯小学奥数六年级上册含答案第03讲递推计数
第三讲递推计数有许多计数问题很复杂,直接处理比较困难,此时硬碰硬是不行的.一个比较有效的策略是退而求其次:先考虑该问题的简单情形,看看简单情形如何处理;在解决了简单情形后,再考虑如何利用简单情形的结论来解决更复杂的问题……这个由简单到复杂的推导过程就叫“递推”.那如何利用“递推法”来解决计数问题呢?下面我们就来看几个例子.例1.老师给小高布置了12篇作文,规定他每天至少写1篇•如果小高每天最多能写3篇,那么共有多少种不同的完成方法?(小高每天只能写整数篇)「分析」从简单情况入手,看看能否找到合适的突破口.如果老师只布置1篇作文,小高有多少种不同的完成方法?如果老师布置2篇作文,小高有多少种不同的完成方法?如果老师布置3篇、4篇、……小高又分别有多少种不同的完成方法?篇数由少到多,完成方法数也会逐渐变多,这其中有什么规律呢?练习1、一个楼梯共有12级台阶,规定每步可以迈二级台阶或三级台阶•走完这12级台阶,共有多少种不同的走法?「分析」与例1的类似,我们还是从简单情形入手找递推关系. 可具体从什么样的情形入手呢?练习2、用7个1 2的长方形纸片覆盖一个7 2的方格表,共有多少种覆盖方法?例3.在一个平面上画出100条直线,最多可以把平面分成几个部分?「分析」当直线数量不多时,画图数一数即可.但现在有100条,画图数并不现实.我们不妨在纸上将直线逐一画出,并在画的过程中仔细观察:每增加一条直线,平面被分成的部分会增加多少?这个增量有什么变化规律?练习3、如果在一个圆内画出50条直线,最多可以把圆分成多少部分?下面我们来学习一类很经典的递推计数问题------ 传球问题.例4.四个人分别穿着红、黄、绿、蓝四种颜色的球衣练习传球,每人都可以把球传给另外三个人中的任意一个. 先由红衣人发球,并作为第1次传球,经过8次传球后球仍然回到红衣人手中•请问:整个传球过程共有多少种不同的可能?「分析」看到这个问题,很多同学可能想通过树形图来求解,我们不妨来试一试.设穿着红、黄、绿、蓝四种颜色球衣的人分别是A、B、C、D .如下图,最开始时,球在A手上,第一次传球由A传给B、C、D,也就是第一层有三个字母就够了•然后B、C、D都会继续往下传球,各有3种传法,传到第二层需要9个字母•再传到第三层,需要27个字母……每一层需要的字母增加迅猛!如果传8次球,到最后一层会用到38 6 561个字母,这要多大的一个树形图啊!BCD A B D A B C BCD A C D ABC BCD A C D A B D可见画树形图的方案不可行. 但树形图对这道题就没有用了吗?并非如此. 它可以帮助我们找出传球过程中所隐藏的递推关系. 事实上,我们并不关心树形图长啥样,我们关心的是数量一一树形图每一层分支的数量. 因此,只要知道每一层各字母出现的次数就可以了,我们不妨制作一个表格来统计这个次数.如下表,我们用第一列来表示层数,第一行来表示每个人,其余空格用于填写字母在该层中出现的次数. 请你从上方的树形图中数一数,填出表格中的前几行. 然后思考一下:这其中隐藏着什么样的递推关系?练习4、三个人分别穿着红、黄、蓝三种颜色的球衣练习传球,每人都可以把球传给另外两个人中的任意一个. 先由红衣人发球,并作为第1次传球,经过7次传球后传到蓝衣人手中.请问:整个传球过程共有多少种不同的可能?解传球问题的方法称为“传球法” •“传球法”是递推法的一种特殊形式,是一种极其实用的数表累加计数法.例5. 一个七位数,每一位都是1、2或者3,而且没有连续的两个1,这样的七位数一共有多少个?「分析」这道题与前面两道题有何异同?应该如何求解呢?前面的计数问题,递推关系都表现为数列、数表的简单累加,但这不是递推的全部.简单累加只是递推的一种表现形式,递推还有很多其它形式. 下面我们就来看一道无法通过简单累加求解的计数问题.例6.圆周上有10个点A1、A2、L、A10,以这些点为端点连接5条线段,要求线段之间没有公共点,共有多少种连接方式?「分析」圆周上10个点,连5条线段,连法很多,很难直接画出来枚举. 像这类问题,我们同样还是从简单的情况入手.那么是应该按1个点、2个点、3个点、……这样依次计数,来找递推关系吗?课堂内外神奇的汉诺塔一位法国数学家曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针. 印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔•不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面.僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽.不管这个传说的可信度有多大,如果考虑一下把64片金片,由一根针上移到另一根针上,并且始终保持上小下大的顺序•这需要多少次移动呢?这里需要递归的方法•假设有n 片,移动次数是f(n).显然f(1) 1 , f(2) 3, f(3) 7,且f(k 1) 2f(k) 1 .此后不难证明f(n) 2n 1 . n 64 时,f (64) 264 1 18446744073709551615 .假如每秒钟一次,共需多长时间呢?一个平年365天有31536000秒,闰年366天有31622400 秒,平均每年31556952 秒,计算一下,18446744073709551615/31556952=584554049253.855 年.这表明移完这些金片需要5845亿年以上,而地球存在至今不过45亿年,太阳系的预期寿命据说也就是数百亿年•真的过了5845亿年,不说太阳系和银河系,至少地球上的一切生命,连同梵塔、庙宇等,都早已经灰飞烟灭.作业1. 有10个蛋黄派,萱萱每天吃1个或2个,那么共有多少种不同的吃法?2. 甲、乙两人玩抓石子游戏,共有12个石子,甲先乙后轮流抓取•每次可以抓取其中的2个、3个或4个,直到最后抓取完毕为止•那么共有多少种抓取石子的方案?3. 用直线把一个平面分成100部分,至少要在平面上画几条直线?4. 一个七位数,它由数字0、1、2、3、4组成,相邻位置上的数字不相同,并且个位数字是2 .这样的七位数有多少个?5. 用8个1 2的长方形纸片覆盖下面的方格表,共有多少种覆盖方法?第五讲进位制问题例题:例7.答案:(1) 31023、3735、11B9、7DD ; (2) 257; ( 3) 1742详解: (1)(2) 2 53 0 52 1 5 232(3) 2 12 0 121 12例& 答案:(1) 5; (2) 13121、731详解:三进制转九进制从右往左两位两位转换; 二进制转四进制从右往左两位两位转换;二进制转八进制从右往左三位三位转换.例9.答案:15031详解:列竖式计算.例 10. 答案:212. a=5、b=5、c=2例11 . 答案:10个详解:若要称量1克的重量必须有1克的砝码,若要称量2克的重量必须有2克的砝码,依次类推可得:1+2+4+8+16+32+64+128+256+512,此时可以称量 1克到1023克的所 有重量,此时需要10个砝码.例12 . 答案:1250 257 ;2 1201742 .详解:所看页数列为1、1、2、4、8、……、256、512、989.练习:6. 答案:554;2781;195;7227. 答案:161578. 答案:212349. 答案:248. a=5、b=0、c=3作业:1. 答案:(1)354;(2)458;(3)C30;(4)14443;(5)433;(6)852. 答案:(1)1131;(2)123123. 答案:100简答:a 很容易知道只能为1 ,再根据进位制展开解方程得出b、c 均为0,所以原数十进制是100.4. 答案:22 简答:由题意有abc 3 cba 4 ,其中a、b、c 均小于3,则有9a 3b c 16c 4b a ,化简得8a b 15c,符合条件的a、b、c为2、1、1,化成十进制是22.5. 答案:24简答:由题意有47 a 74 b ,其中a、b 均要大于7,则有4a 77b 4 ,符合条件的最小的a、b为15、9,和是24.。
利用递推关系求数列通项的九种类型及解法
利用递推关系求数列通项的九种类型及解法1.形如)(1n f a a n n =-+型(1)若f(n)为常数,即:d a a n n =-+1,此时数列为等差数列,则n a =d n a )1(1-+. (2)若f(n)为n 的函数时,用累加法. 方法如下: 由 )(1n f a a n n =-+得:2≥n 时,)1(1-=--n f a a n n ,)2(21-=---n f a a n n ,)2(23f a a =-)1(12f a a =-所以各式相加得 )1()2()2()1(1f f n f n f a a n +++-+-=-即:∑-=+=111)(n k n k f a a .为了书写方便,也可用横式来写:2≥n 时,)1(1-=--n f a a n n ,∴112211)()()(a a a a a a a a n n n n n +-++-+-=---=1)1()2()2()1(a f f n f n f ++++-+- . 例 1. (2003天津文) 已知数列{a n }满足)2(3,1111≥+==--n a a a n n n ,证明213-=nn a证明:由已知得:故,311--=-n n n a a112211)()()(a a a a a a a a n n n n n +-++-+-=---=.213133321-=++++--nn n ∴213-=nn a .例 2.已知数列{}n a 的首项为1,且*12()n n a a n n N+=+∈写出数列{}n a 的通项公式.答案:12+-n n例3.已知数列}{n a 满足31=a ,)2()1(11≥-+=-n n n a a n n ,求此数列的通项公式.答案:na n 12-=评注:已知a a =1,)(1n f a a n n =-+,其中f(n)可以是关于n 的一次函数、二次函数、指数函数、分式函数,求通项n a .①若f(n)是关于n 的一次函数,累加后可转化为等差数列求和; ②若f(n)是关于n 的二次函数,累加后可分组求和;③若f(n)是关于n 的指数函数,累加后可转化为等比数列求和; ④若f(n)是关于n 的分式函数,累加后可裂项求和。
递推数列求通项公式的典型方法
递推数列求通项公式的典型方法1、 a n+1=a n +f (n )型 累加法:a n =(a n -a n-1)+(a n-1-a n-2)+…+(a 2-a 1)+ a 1 =f (n-1)+f (n-2)+…f (1)+ a1例1 已知数列{a n }满足a 1=1,a n+1=a n +2n (n ∈N *), 求a n 解: a n =(a n -a n-1)+(a n-1-a n-2)+…+(a 2-a 1)+ a 1 =2n-1+2n-2+…+21+1=2n -1(n ∈N *)例 在数列{n a }中,31=a ,)1(11++=+n n a a n n ,求通项公式n a .解:原递推式可化为:1111+-+=+n n a a n n则,211112-+=a a 312123-+=a a413134-+=a a ,……,nn a a n n 1111--+=-逐项相加得:n a a n 111-+=.故na n 14-=2、)(1n g a ann =+型累积法:112211.....a a aa a a a a n n n n n ---=所以()()()()11...321a g n g n g n g a n ---=∴例2:已知数列{a n }满足()*1N n n a ann ∈=+,.11=a 求n a解:112211...a a aa a a a a n n n n n ---==()()()()!11...321-=---n n n n ()()+∈-=∴N n n a n !1例2 设数列{n a }是首项为1的正项数列,且0)1(1221=+-+++n n n n a a na a n (n=1,2,3…),则它的通项公式是n a =▁▁▁(2000年高考15题). 解:原递推式可化为:)]()1[(11n n n n a a na a n +-+++=0 ∵ n n a a ++1>0,11+=+n na a n n 则,43,32,21342312===a a a a a a ……,nn a a n n 11-=- 逐项相乘得:n a a n 11=,即n a =n1. 3.q pa a n n +=+1型(p,q 为常数)方法:(1)⎪⎪⎭⎫⎝⎛-+=-++111p q a p p q a n n ,再根据等比数列的相关知识求n a . (2)()11-+-=-n n n n a a p a a 再用累加法求n a .(3)111++++=n n n n n p qp a p a ,先用累加法求n n p a 再求n a 例3.已知{}n a 的首项a a =1(a 为常数),()2,21≥∈=+-n N n a a n n ,求n a解 设()λλ-=--12n n a a ,则1-=λ ()1211+=+∴-n n a a{}1+∴n a 为公比为2的等比数列。
计数之递推法
7-6-4计数之递推法教学目标前面在讲加法原理、乘法原理、排列组合时已经穿插讲解了计数中的一些常用的方法,比如枚举法、树形图法、标数法、捆绑法、排除法、插板法等等,这里再集中学习一下计数中其他常见的方法,主要有归纳法、整体法、对应法、递推法.对这些计数方法与技巧要做到灵活运用.例题精讲对于某些难以发现其一般情形的计数问题,可以找出其相邻数之间的递归关系,有了这一递归关系就可以利用前面的数求出后面未知的数,这种方法称为递推法.【例1】每对小兔子在出生后一个月就长成大兔子,而每对大兔子每个月能生出一对小兔子来.如果一个人在一月份买了一对小兔子,那么十二月份的时候他共有多少对兔子?【例2】树木生长的过程中,新生的枝条往往需要一段“休息”时间供自身生长,而后才能萌发新枝.一棵树苗在一年后长出一条新枝,第二年新枝“休息”,老枝依旧萌发新枝;此后,老枝与“休息”过一年的枝同时萌发,当年生的新枝则依次“休息”.这在生物学上称为“鲁德维格定律”.那么十年后这棵树上有多少条树枝?【例3】一楼梯共10级,规定每步只能跨上一级或两级,要登上第10级,共有多少种不同走法?【巩固】一楼梯共10级,规定每步只能跨上一级或三级,要登上第10级,共有多少种不同走法?【例4】1×2的小长方形(横的竖的都行)覆盖2×10的方格网,共有多少种不同的盖法.【例5】用13⨯的方格网,共有多少种不同的盖法?⨯的小长方形覆盖38【例6】有一堆火柴共12根,如果规定每次取1~3根,那么取完这堆火柴共有多少种不同取法?【巩固】一堆苹果共有8个,如果规定每次取1~3个,那么取完这堆苹果共有多少种不同取法?【例7】有10枚棋子,每次拿出2枚或3枚,要想将10枚棋子全部拿完,共有多少种不同的拿法?【例8】如下图,一只蜜蜂从A处出发,回到家里B处,每次只能从一个蜂房爬向右侧邻近的蜂房而不准逆行,共有多少种回家的方法?AB【巩固】小蜜蜂通过蜂巢房间,规定只能由小号房间进入大号房间问小蜜蜂由A房间到达B房间有多少种方法?【例9】如下图,一只蜜蜂从A处出发,回到家里B处,每次只能从一个蜂房爬向右侧邻近的蜂房而不准逆行,共有多少种回家的方法?【例10】对一个自然数作如下操作:如果是偶数则除以2,如果是奇数则加1,如此进行直到得数为1操作停止.问经过9次操作变为1的数有多少个?【例11】有20个石子,一个人分若干次取,每次可以取1个,2个或3个,但是每次取完之后不能留下质数个,有多少种方法取完石子?(石子之间不作区分,只考虑石子个数)【巩固】有20个相同的棋子,一个人分若干次取,每次可取1个,2个,3个或4个,但要求每次取之后留下的棋子数不是3或4的倍数,有种不同的方法取完这堆棋子.【例12】4个人进行篮球训练,互相传球接球,要求每个人接球后马上传给别人,开始由甲发球,并作为第一次传球,第五次传球后,球又回到甲手中,问有多少种传球方法?【巩固】五个人互相传球,由甲开始发球,并作为第一次传球,经过4次传球后,球仍回到甲手中.问:共有多少种传球方式?【例13】设A、E为正八边形ABCDEFGH的相对顶点,顶点A处有一只青蛙,除顶点E外青蛙可以从正八边形的任一顶点跳到其相邻两个顶点中任意一个,落到顶点E时青蛙就停止跳动,则青蛙从顶点A出发恰好跳10次后落到E的方法总数为种.【巩固】在正五边形ABCDE上,一只青蛙从A点开始跳动,它每次可以随意跳到相邻两个顶点中的一个上,一旦跳到D点上就停止跳动.青蛙在6次之内(含6次)跳到D点有种不同跳法.【例14】有6个木箱,编号为1,2,3,……,6,每个箱子有一把钥匙,6把钥匙各不相同,每个箱子放进一把钥匙锁好.先挖开1,2号箱子,可以取出钥匙去开箱子上的锁,如果最终能把6把锁都打开,则说这是一种放钥匙的“好”的方法,那么“好”的方法共有种.【巩固】有10个木箱,编号为1,2,3,……,10,每个箱子有一把钥匙,10把钥匙各不相同,每个箱子放进一把钥匙锁好.先挖开1,2号箱子,可以取出钥匙去开箱子上的锁,如果最终能把10把锁都打开,则说这是一种放钥匙的“好”的方法,那么“好”的方法共有种.。
一、递推的方法
一、递推的方法在不少计数问题中,要很快求出结果是比较困难的,有时可先从简单情况入手,然后从某一种特殊情况逐渐推出与以后比较复杂情况之间的关系,找出规律逐步解决问题,这样的方法叫递推方法。
例2 计算13+23+33+43+53+63+73+83+93+103的值。
这道题我们可以采用分别求出每个数的立方是多少,再求和的方法来解答。
但是,这样计算的工作量比较大,我们可以从简单的情况开始研究。
13+23=9=32=(1+2)213+23+33=36=62=(1+2+3)213+23+33+43=100=102=(1+2+3+4)2……这样我们可以得到:13+23+33+43+53+63+73+83+93+103=(1+2+3+4+5+6+7+8+9+10)2=552=3025所以 13+23+33+……+n3=(1+2+3+……+n)2例3 2000个学生排成一行,依次从左到右编上1~2000号,然后从左到右按一、二报数,报一的离开队伍,剩下的人继续按一、二报数,报一的离开队伍,……按这个规律如此下去,直至当队伍只剩下一人为止。
问:这时一共报了多少次?最后留下的这个人原来的号码是多少?难的不会想简单的,数大的不会想数小的。
我们先从这2000名同学中选出20人代替2000人进行分析,试着找出规律,然后再用这个规律来解题。
这20人第一次报数后共留下10人,因为20÷2=10 ,这10人开始时的编号依次是:2、4、6、8、10、12、14、16、18、20,都是2的倍数。
第二次报数后共留下5人,因为10÷2=5 ,这5人开始时的编号依次是: 4、8、12、16、20,都是4的倍数,也就是2×2的倍数。
第三次报数后共留下2人,因为5÷2=2 ……1 ,这2人开始时的编号依次是: 8、16,都是8的倍数,也就是2×2×2的倍数。
第四次报数后共留下1人,因为2÷2=1 ,这1人开始时的编号是:16,都是8的倍数,也就是2×2×2×2的倍数。
高斯小学奥数六年级上册含答案第03讲 递推计数
第三讲递推计数有许多计数问题很复杂,直接处理比较困难,此时硬碰硬是不行的.一个比较有效的策略是退而求其次:先考虑该问题的简单情形,看看简单情形如何处理;在解决了简单情形后,再考虑如何利用简单情形的结论来解决更复杂的问题……这个由简单到复杂的推导过程就叫“递推”.那如何利用“递推法”来解决计数问题呢?下面我们就来看几个例子.例1.老师给小高布置了12篇作文,规定他每天至少写1篇.如果小高每天最多能写3篇,那么共有多少种不同的完成方法?(小高每天只能写整数篇)「分析」从简单情况入手,看看能否找到合适的突破口.如果老师只布置1篇作文,小高有多少种不同的完成方法?如果老师布置2篇作文,小高有多少种不同的完成方法?如果老师布置3篇、4篇、……小高又分别有多少种不同的完成方法?篇数由少到多,完成方法数也会逐渐变多,这其中有什么规律呢?练习1、一个楼梯共有12级台阶,规定每步可以迈二级台阶或三级台阶.走完这12级台阶,共有多少种不同的走法?⨯的方格表,共有多少种覆盖方法?例2.用10个13⨯的长方形纸片覆盖一个103「分析」与例1的类似,我们还是从简单情形入手找递推关系.可具体从什么样的情形入手呢?⨯的方格表,共有多少种覆盖方法?练习2、用7个12⨯的长方形纸片覆盖一个72例3.在一个平面上画出100条直线,最多可以把平面分成几个部分?「分析」当直线数量不多时,画图数一数即可.但现在有100条,画图数并不现实.我们不妨在纸上将直线逐一画出,并在画的过程中仔细观察:每增加一条直线,平面被分成的部分会增加多少?这个增量..有什么变化规律?练习3、如果在一个圆内画出50条直线,最多可以把圆分成多少部分?下面我们来学习一类很经典的递推计数问题——传球问题.例4.四个人分别穿着红、黄、绿、蓝四种颜色的球衣练习传球,每人都可以把球传给另外三个人中的任意一个.先由红衣人发球,并作为第1次传球,经过8次传球后球仍然回到红衣人手中.请问:整个传球过程共有多少种不同的可能?「分析」看到这个问题,很多同学可能想通过树形图来求解,我们不妨来试一试.设穿着红、黄、绿、蓝四种颜色球衣的人分别是A 、B 、C 、D .如下图,最开始时,球在A 手上,第一次传球由A 传给B 、C 、D ,也就是第一层有三个字母就够了.然后B 、C 、D 都会继续往下传球,各有3种传法,传到第二层需要9个字母.再传到第三层,需要27个字母……每一层需要的字母增加迅猛!如果传8次球,到最后一层会用到836561 个字母,这要多大的一个树形图啊!可见画树形图的方案不可行.但树形图对这道题就没有用了吗?并非如此.它可以帮助我们找出传球过程中所隐藏的递推关系.事实上,我们并不关心树形图长啥样,我们关心的是数量——树形图每一层分支的数量.因此,只要知道每一层各字母出现的次数就可以了,我们不妨制作一个表格来统计这个次数.如下表,我们用第一列来表示层数,第一行来表示每个人,其余空格用于填写字母在该层中出现的次数.请你从上方的树形图中数一数,填出表格中的前几行.然后思考一下:这其中隐藏着什么样的递推关系?BC DACDABDABCAB C D A B D A B C B C D A C D A B C B C D A C D A B D练习4、三个人分别穿着红、黄、蓝三种颜色的球衣练习传球,每人都可以把球传给另外两个人中的任意一个.先由红衣人发球,并作为第1次传球,经过7次传球后传到蓝衣人手中.请问:整个传球过程共有多少种不同的可能?解传球问题的方法称为“传球法”.“传球法”是递推法的一种特殊形式,是一种极其实用的数表累加计数法.例5.一个七位数,每一位都是1、2或者3,而且没有连续的两个1,这样的七位数一共有多少个?「分析」这道题与前面两道题有何异同?应该如何求解呢?前面的计数问题,递推关系都表现为数列、数表的简单累加,但这不是递推的全部.简单累加只是递推的一种表现形式,递推还有很多其它形式.下面我们就来看一道无法通过简单累加求解的计数问题.例6.圆周上有10个点A1、A2、L、A10,以这些点为端点连接5条线段,要求线段之间没有公共点,共有多少种连接方式?「分析」圆周上10个点,连5条线段,连法很多,很难直接画出来枚举.像这类问题,我们同样还是从简单的情况入手.那么是应该按1个点、2个点、3个点、……这样依次计数,来找递推关系吗?神奇的汉诺塔一位法国数学家曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针.印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔.不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面.僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽.不管这个传说的可信度有多大,如果考虑一下把64片金片,由一根针上移到另一根针上,并且始终保持上小下大的顺序.这需要多少次移动呢?这里需要递归的方法.假设有n 片,移动次数是()f n .显然(1)1f =,(2)3f =,(3)7f =,且(1)2()1f k f k +=+.此后不难证明()21n f n =-.64n =时,64(64)2118446744073709551615f =-=.假如每秒钟一次,共需多长时间呢?一个平年365天有31536000 秒,闰年366天有31622400秒,平均每年31556952秒,计算一下,18446744073709551615/31556952=584554049253.855年.这表明移完这些金片需要5845亿年以上,而地球存在至今不过45亿年,太阳系的预期寿命据说也就是数百亿年.真的过了5845亿年,不说太阳系和银河系,至少地球上的一切生命,连同梵塔、庙宇等,都早已经灰飞烟灭.课 堂 内 外作业1. 有10个蛋黄派,萱萱每天吃1个或2个,那么共有多少种不同的吃法?2. 甲、乙两人玩抓石子游戏,共有12个石子,甲先乙后轮流抓取.每次可以抓取其中的2个、3个或4个,直到最后抓取完毕为止.那么共有多少种抓取石子的方案?3. 用直线把一个平面分成100部分,至少要在平面上画几条直线?4. 一个七位数,它由数字0、1、2、3、4组成,相邻位置上的数字不相同,并且个位数字是2.这样的七位数有多少个?5. 用8个的长方形纸片覆盖下面的方格表,共有多少种覆盖方法?12第五讲 进位制问题例题:例7. 答案:(1)31023、3735、11B9、7DD ;(2)257;(3)1742详解: (1)(2)32025051525257⨯+⨯+⨯+⨯=; (3)3202120121122121742⨯+⨯+⨯+⨯=.例8.答案:(1)5;(2)13121、731 详解:三进制转九进制从右往左两位两位转换;二进制转四进制从右往左两位两位转换;二进制转八进制从右往左三位三位转换.例9.答案:15031 详解:列竖式计算.例10. 答案:212.a =5、b =5、c =2例11. 答案:10个详解:若要称量1克的重量必须有1克的砝码,若要称量2克的重量必须有2克的砝码,依次类推可得:1+2+4+8+16+32+64+128+256+512,此时可以称量1克到1023克的所有重量,此时需要10个砝码.例12. 答案:12...... 3 ...... 2 ...... 1 0 (3)...... 2 ...... 3 (7) (3)…… 9 ……12 (1) (1)...... 13 ...... 13 (7)详解:所看页数列为1、1、2、4、8、……、256、512、989.练习:6. 答案:554;2781;195;7227. 答案:161578. 答案:212349. 答案:248.a =5、b =0、c =3作业:1. 答案:(1)354;(2)458;(3)C 30;(4)14443;(5)433;(6)852. 答案:(1)1131;(2)123123. 答案:100简答:a 很容易知道只能为1,再根据进位制展开解方程得出b 、c 均为0,所以原数十进制是100.4. 答案:22简答:由题意有,其中a 、b 、c 均小于3,则有,化简得,符合条件的a 、b 、c 为2、1、1,化成十进制是22.5. 答案:24简答:由题意有,其中a 、b 均要大于7,则有,符合条件的最小的a 、b 为15、9,和是24.4774a b +=+ ()()4774a b = 815a b c =+ 93164a b c c b a ++=++ ()()34abc cba =。
(最新)递推算法典型例题
高一年级信息学·竞赛辅导教案【授课教师:张辉】第 1 页共12 页递推算法典型例题一、教学目标1、由浅入深,了解递推算法2、掌握递推算法的经典例题二、重点难点分析1、重点:递推关系的建立2、难点:如何将所求问题转化为数学模型三、教具或课件微机四、主要教学过程(一) 引入新课客观世界中的各个事物之间或者一个事物的内部各元素之间,往往存在(隐藏)着很多本质上的关联。
我们设计程序前.应该要通过细心的观察、丰富的联想、不断的尝试推理.尽可能先归纳总结出其内在规律,然后再把这种规律性的东西抽象成数学模型,最后再去编程实现。
递推关系和递归关系都是一种简洁高效的常见数学模型,我们今天先来深入研究一下递推算法如何实现。
(二) 教学过程设计递推法是一种重要的数学方法,在数学的各个领域中都有广泛的运用,也是计算机用于数值计算的一个重要算法。
这种算法特点是:一个问题的求解需一系列的计算,在已知条件和所求问题之间总存在着某种相互联系的关系,在计算时,如果可以找到前后过程之间的数量关系(即递推式),那么,这样的问题可以采用递推法来解决。
从已知条件出发,逐步推出要解决的问题,叫顺推;从问题出发逐步推到已知条件,此种方法叫逆推。
无论顺推还是逆推,其关键是要找到递推式。
这种处理问题的方法能使复杂运算化为若干步重复的简单运算,充分发挥出计算机擅长于重复处理的特点。
递推算法的首要问题是得到相邻的数据项间的关系(即递推关系)。
递推算法避开了通项公式的麻烦,把一个复杂的问题的求解,分解成了连续的若干步简单运算。
一般说来可以将递推算法看成是一种特殊的迭代算法。
(在解题时往往还把递推问题表现为迭代形式,用循环处理。
所谓“迭代”,就是在程序中用同一个变量来存放每一次推算出来的值,每一次循环都执行同一个语句,给同一变量赋以新的值,即用一个新值代替旧值,高一年级信息学·竞赛辅导教案【授课教师:张辉】第 2 页共12 页这种方法称为迭代。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例1、骑士游历:(noip1997tg)
设有一个n*m的棋盘(2<=n<=50,2<=m<=50),如下图,在棋盘上任一点有一个中国象棋马,马走的规则为:1.马走日字 2.马只能向右走,即如下图所示:
任务1:当N,M 输入之后,找出一条从左下角到右上角的路径。
例如:输入N=4,M=4
输出:路径的格式:(1,1)->(2,3)->(4,4);若不存在路径,则输出"no"
任务2:当N,M 给出之后,同时给出马起始的位置和终点的位置,试找出从起点到终点的所有路径的数目。
例如:(N=10,M=10),(1,5)(起点),(3,5)(终点)
输出:2(即由(1,5)到(3,5)共有2条路径)
输入格式:n,m,x1,y1,x2,y2(分别表示n,m,起点坐标,终点坐标)
输出格式:路径数目(若不存在从起点到终点的路径,输出0)
算法分析:为了研究的方便,我们先将棋盘的横坐标规定为i,纵坐标规定为j,对于一个n×m的棋盘,i的值从1到n,j的值从1到m。
棋盘上的任意点都可以用坐标(i,j)表示。
对于马的移动方法,我们用K来表示四种移动方向(1,2,3,4);而每种移动方法用偏移值来表示,并将这些偏移值分别保存在数组dx和dy中,如下表
根据马走的规则,马可以由(i-dx[k],j-dy[k])走到(i,j)。
只要马能从(1,1)走到(i-dx[k],j-dy[k]),就一定能走到(i,j),马走的坐标必须保证在棋盘上。
我们以(n,m)为起点向左递推,当递推到(i-dx[k],j-dy[k])的位置是(1,1)时,就找到了一条从(1,1)到(n,m)的路径。
我们用一个二维数组a表示棋盘,对于任务一,使用倒推法,从终点(n,m)往左递推,设初始值a[n,m]为(-1,-1),如果从(i,j)一步能走到(n,m),就将(n,m)存放在a[i,j]中。
如下表,a[3,2]和a[2,3]的值是(4,4),表示从这两个点都可以到达坐标(4,4)。
从(1,1)可到达(2,3)、(3,2)两个点,所以a[1,1]存放两个点中的任意一个即可。
递推结束以后,如果a[1,1]
任务一的源程序:
const
dx:array[1..4]of integer=(2,2,1,1);
dy:array[1..4]of integer=(1,-1,2,-2);
type
map=record
x,y:integer;
end;
var
i,j,n,m,k:integer;
a:array[0..50,0..50]of map;
begin
read(n,m);
fillchar(a,sizeof(a),0);
a[n,m].x:=-1;a[n,m].y:=-1;{标记为终点}
for i:=n downto 2 do {倒推}
for j:=1 to m do
if a[i,j].x<>0 then
for k:=1 to 4 do
begin
a[i-dx[k],j-dy[k]].x:=i;
a[i-dx[k],j-dy[k]].y:=j;
end;
if a[1,1].x=0 then writeln('no')
else begin{存在路径}
i:=1;j:=1;
write('(',i,',',j,')');
while a[i,j].x<>-1 do
begin
k:=i;
i:=a[i,j].x;j:=a[k,j].y;
write('->(',i,',',j,')');
end;
end;
end.
对于任务二,也可以使用递推法,用数组A[i,j]存放从起点(x1,y1)到(i,j)的路径总数,按同样的方法从左向右递推,一直递推到(x2,y2),a[x2,y2]即为所求的解。
源程序(略)在上面的例题中,递推过程中的某个状态只与前面的一个状态有关,递推关系并不复杂,如果在递推中的某个状态与前面的所有状态都有关,就不容易找出递推关系式,这就需要我们对实际问题进行分析与归纳,从中找到突破口,总结出递推关系式。
我们可以按以下四个步骤去分析:(1)细心的观察;(2)丰富的联想;(3)不断地尝试;(4)总结出递推关系式。
下面我们再看一个复杂点的例子。
例2、栈(noip2003pj)
题目大意:求n个数通过栈后的排列总数。
(1≤n≤18)
如输入3 输出 5
算法分析:先模拟入栈、出栈操作,看看能否找出规律,我们用f(n)表示n个数通过栈操作后的排列总数,当n很小时,很容易模拟出f(1)=1;f(2)=2;f(3)=5,通过观察,看不出它们之间的递推关系,我们再分析N=4的情况,假设入栈前的排列为“4321”,按第一个数“4”在出栈后的位置进行分情况讨论:
(1)若“4”最先输出,刚好与N=3相同,总数为f(3);
(2)若“4”第二个输出,则在“4”的前只能是“1”,“23”在“4”的后面,这时可以分别看作是N=1和N=2时的二种情况,排列数分别为f(1)和f(2),所以此时的总数为f(1)*f(2);
(3)若“4”第三个输出,则“4”的前面二个数为“12”,后面一个数为“3”,组成的排列总数为f(2)*f(1);
(4)若“4”第四个输出,与情况(1)相同,总数为f(3);
所以有:f(4)=f(3)+f(1)*f(2)+f(2)*f(1)+f(3);
若设0个数通过栈后的排列总数为:f(0)=1;
上式可变为:f(4)=f(0)*f(3)+f(1)*f(2)+f(2)*f(1)+f(3)*f(0);
再进一步推导,不难推出递推式:
f(n)=f(0)*f(n-1)+f(1)*f(n-2)+…+f(n-1)*f(0);
即f(n)= (n>=1)
初始值:f(0)=1;
有了以上递推式,就很容易用递推法写出程序。
var
a:array[0..18]of longint;
n,i,j:integer;
begin
readln(n);
fillchar(a,sizeof(a),0);
a[0]:=1;
for i:=1 to n do
for j:=0 to i-1 do a[i]:=a[i]+a[j]*a[i-j-1];
writeln(a[n]);
end.
递推算法最主要的优点是算法结构简单,程序易于实现,难点是从问题的分析中找出解决问题的递推关系式。
对于以上两个例子,如果在比赛中找不出递推关系式,也可以用回溯法求解。