2. 读书问题
题目描述:这是一道选择题。小明读一本10页的书,每天读1页或者2页,读完一共有多少种读法。
原先思路:我的思路是将其用组合原理解决。分别讨论有0,1,2,3,4,5个两页时的读法,但是在计算中间2,3,4时无从下手。
应该采用的思路:我先前的思路属于系统论,从全局到局部,但前提是要掌握分解的确切方法。
-
还原论
而下次遇到此类问题时,在系统思想比较复杂时,应该采用还原论的角度,将其缩小到不能再分的简单尺度,再逐渐往上迭。
页数————读法—————数量
1:1(1)
2:11、2(2)
3:111、12、21(3)
4:1111、121、211、112、22(5)
观察其规律不难看出属于斐波那契数列,所以n页书可以由n-1和n-2页数相加而得。 -
微元论
前面提到这是斐波那契数列,但是却没有给出理由。
另一种角度其实是关注当下,即当下是如何变化的,这有点类似于数学归纳法的递推方程。
当我们希望知道读第n页有几种读法时,思考:题目给了我们什么移动方式,其实是两种,
既可以从昨天读完n-1页得到,也可以从昨天读完n-2页今天读2页得到。
所以就得到了状态转移方程:f(n)=f(n−1)+f(n−2) -
组合原理
其实我本来的思路没问题,只不过中间计算过程上出错了。
当有k个两页时,就有10-2k个一页,就一共有10-k天。
讨论其中有多少种阅读方式,只需要从10-k中挑选k即可,所以是C_{10-k}^{k}
k=0:1
k=1:9
k=2:28
k=3:35
k=4:15
k=5:1
相加也可以得到正确答案。