书籍介绍:

https://book.douban.com/subject/21323941/

github仓库:

https://github.com/Doraemonzzz/Concrete-Mathematics

记录具体数学一书中的习题解答,题目又多又难,所以计划是分为几轮完成,第一轮完成热身题,作业题以及考试题,第二轮再解决其余部分的习题。

这次回顾第一章,递归问题。

第1章 递归问题

热身题

1

错在base case,$n=2$时:

两个区间没有交集,所以无法使用上述证明。

2

移动过程:

步骤 $A$ $B$ $C$
$0$ $[1,\ldots, n]$
$1$ $[n]$ $[1,\ldots, n-1]$
$2$ $[1,\ldots, n-1]$ $[n]$
$3$ $[1,\ldots, n-1]$ $[n]$
$4$ $[1,\ldots, n-1]$ $[n]$
$5$ $[1,\ldots, n]$

记$n$个圆盘的最少移动次数为$T_n $,那么$T_n$满足

下面证明反方向的不等号:

  • $n$从$A$移动到$B$必然要先移动到$C$,此时$[1,\ldots,n-1]$必然在$B$,这部分移动次数至少为$1+T_{n-1}$
  • 接着$n$从$C$移动到$B$,移动之前$[1,\ldots, n-1]$要先移动到$A$,这部分移动次数至少为$1+T_{n-1}$
  • 最后要将$[1,\ldots, n-1]$从$A$移动到$B$,移动次数至少为$T_{n-1}$

所以

从而

求解可得

3

备注:

正确的叠放是指,将$n$个圆盘分为三组,那么每组的顺序从小到大的。

  • $T(n)$: 在2的限制下,我们会在3根桩柱上都遇到$n $个圆盘的每一种正确的叠放。

关于$n$做数学归纳法即可。

当$k =1$时,$k$的移动路径为$A\to C\to B$,所以结论成立。

假设当$k= n -1$时结论成立,下面证明$k=n$时结论也成立。

考虑之前的移动步骤:

步骤 $A$ $B$ $C$
$0$ $[1,\ldots, n]$
$1$ $[n]$ $[1,\ldots, n-1]$
$2$ $[1,\ldots, n-1]$ $[n]$
$3$ $[1,\ldots, n-1]$ $[n]$
$4$ $[1,\ldots, n-1]$ $[n]$
$5$ $[1,\ldots, n]$

考虑$n$在的位置:

如果$n$在$A$,由归纳假设可知将$[1,\ldots,n-1]$从$A$移动到$B$会遇到每一种正确的叠放,这也对应了$n$在$A$情形下每一种正确的叠放。

$n$在$B,C$的情形同理可得。

所以$k=n$时结论也成立。

4

  • $T(n)$: 对于$n$个圆盘的任意摆列方式,按照卢卡斯原来的规则,最多需要$2^n-1$次移动将圆盘移动到$B$。

关于$n$做数学归纳法即可。

当$n=1$时结论显然。

假设当$n= m -1$时结论成立,下面证明$n=m$时结论也成立。

如果$m$在$B$,那么对剩余$n-1$个圆盘运用$T(n-1)$即可,移动次数

如果$m$不在$B$,由对称性不妨设$m$在$A$,那么移动过程如下:

  • $[1,\ldots, m-1] \to C$
  • $[m]\to B$
  • $[1,\ldots, m-1] \to B$

所以移动次数

5

两个圆最多相交于两点,所以第$4$个圆最多和前$3$个圆交于$6$点,最多增加$6$块区域,所以总区域最多为

补充说明:

答案中给的卵形和圆的最大不同之处在于,两个卵形可以有$4$个交点。

6

记$n$条直线产生的有界区域最大个数为$a_n$。

考虑第$n$条直线,该直线最多和$n-1$条直线相交,即产生$n-1$个交点,相邻两个点最多可以增加一个有界区域,所以最多增加$n-2$个有界区域,因此

7

即base case结论都不成立,所以无法使用数学归纳法。

作业题

8

所以

$Q=0,\ldots, 4$的定义如上。

9

(a)

假设$P(n)$成立,令

那么

所以

所以$P(n)\Rightarrow P(n-1)$。

(b)

如果$P(n), P(2)$成立,那么

所以$P(2n)$成立。

(c)

首先由$P(2)$成立以及(b)的结论可得$P(2^{k})$成立。

接着,对于任意$n \neq 2^k$,总存在$k$,满足$n< 2^k $,所以由(a)可得

从而$P(n)$成立。

10

$A\to B$:

步骤 $A$ $B$ $C$
$0$ $[1,\ldots, n]$
$1$ $[n]$ $[1,\ldots, n-1]$
$2$ $[n]$ $[1,\ldots, n-1]$
$3$ $[1,\ldots, n]$

注意到$A\to C, C\to B$和$B\to A$等价,所以

另一方面,要使得第$n$个圆盘移动到$B$,该步骤至少要$1$次,并且此时前$n-1$个圆盘应该在$C$,$A\to C$的最少步骤数为$R_{n-1}$,$C\to B$的最少步骤数为$R_{n-1}$,所以

综上

$B\to A$:

步骤 $A$ $B$ $C$
$0$ $[1,\ldots, n]$
$1$ $[1,\ldots, n-1]$ $[n] $
$2$ $[1,\ldots, n-1]$ $[n]$
$3$ $[1,\ldots, n-1]$ $[n]$
$4$ $[n]$ $[1,\ldots, n-1]$
$5$ $[1,\ldots, n]$

所以

另一方面,第$n$个圆盘从$B$到$A$必然要经历两步:

  • 第一步:$B\to C$,此时前$n-1$个圆盘必然在$A$,即前$n-1$个圆盘要从$B$移动到$A$,这部分的步骤数$\ge R_{n-1}+1$
  • 第二步:$C\to A$,此时前$n-1$个圆盘必然在$B$,即前$n-1$个圆盘要从$A$移动到$B$,所以这部分的步骤数$\ge Q_{n-1}+1$
  • 第三步:将$B$上的圆盘移动到$A$,这步分的步骤数$\ge R_{n-1}$

所以

综上

11

(a)

先将前$2n-2$个圆盘移动到$C$,然后将最后两个圆盘移动到$B$,最后将$C$上的圆盘移动到$B$,所以递推关系为

求解可得

注意这种移动方式保持尺寸大小$\le n-1$的圆盘顺序不变,尺寸大小为$n$的圆盘顺序相反(利用归纳法可证)。

(b)

显然

$B\to A$有如下移动方式:

步骤 $A$ $B$ $C$ 步骤数
$0$ $[1,-1,\ldots, n,-n]$ $0$
$1$ $[n, -n]$ $[1,-1\ldots,-(n-1), (n-1)]$ $A_{n-1}$
$2$ $[-n]$ $[1,-1\ldots,-(n-1), (n-1)]$ $[n]$ $1$
$3$ $[-n] $ $[1,-1\ldots,(n-1), -(n-1),n]$ $A_{n-1}$
$4$ $[-n]$ $[1,-1\ldots,(n-1), -(n-1),n]$ $1$
$5$ $[1,-1\ldots,-(n-1), (n-1),n]$ $[-n]$ $[n]$ $A_{n-1}$
$6$ $[1,-1\ldots,-(n-1), (n-1),n]$ $[n,-n]$ $1$
$7$ $[1,-1,\ldots,(n-1), -(n-1), n,-n]$ $A_{n-1}$

所以

另一方面,$[n,-n]$按照顺序从$A$到$B$至少需要$3$次,具体如下:

  • $n: A\to C$,要使得这步能移动,前$2n-2$个圆盘必然在$B$,这部分的步骤数$\ge A_{n-1}+1$
  • $-n:A\to B$,要使得这步能移动,前$2n-2$个圆盘必然在$C$,这部分的步骤数$\ge A_{n-1}+1$
  • $n:C\to B$,要使得这步能移动,前$2n-2$个圆盘必然在$A$,这部分的步骤数$\ge A_{n-1}+1$
  • 最后将$A$上的圆盘移动到$B$,这部分的步骤数$\ge A_{n-1}$

所以

有注意按照(a)的方式操作$4$次,最终顺序必然是原始的顺序,从而上述不等号可以取到等号。

因此

12

不妨假设

基本情形:

$n=1$,此时

一般情形:

第一步,把大小为$1,\ldots, n-1$的圆盘移动到另一棵柱子上,接着把$m_n$个大小为$n$的柱子移动到目标柱上,最后把大小为$1,\ldots, n-1$的圆盘移动到目标柱上,递推关系如下:

递推可得

如果

那么

注意这种移动方式同样保持尺寸大小$\le n-1$的圆盘顺序不变,尺寸大小为$n$的圆盘顺序相反。

补充

同样的,可以计算$B(m_1,\ldots, m_n)$。

情形1:$n=1$。

将前$m_1-1$个圆盘移动到另一棵柱子上(此时反序),然后将第$m_1$个圆盘移动到目标柱上,最后将另一棵柱子上的圆盘移动到目标柱上,因此

情形2:$m_n=1$。

此时利用之前的移动方式即可(因为一个元素反序等于没有反序),因此

情形3:一般情形。

第一步,利用之前的方式将除了最后一个圆盘移动到另一个圆柱上,这一步的操作步数为

第二步,将最后一个圆盘移动到目标柱上,这一步的操作步数为

第三步,将另一个圆盘上的元素移动到目标柱上,这一步的操作步数为

注意到这样操作后,顺序不变,因此

对比答案中的结果:

求解该式:

13

考虑$ZZ_{n-1}$到$ZZ_n$的变化,因为$Z$一共有三段,每一段和之前$3(n-1)$条线最多交于$3(n-1)$个交点,所以增加的区域数量为

另一方面,对于线段部分,有两个增加的区域是和射线部分构成的三角形,这部分重复计算了,所以实际上增加的区域数量为

所以递推关系为

因此

14

考虑$P_n$和$P_{n-1}$的递推关系,将前$n-1$个平面投影到第$n$个平面上,那么第$n$个平面被划分为$L_{n-1}$个区域,所以

所以很容易将此推广到高维空间。

对于$k$维空间,被$n$个$k-1$维超平面最多的划分数量为$P_n^{k}$,那么

特别的

下面证明

利用数学归纳法证明该结论。

$k=1$时,即为线段情形,显然有

$n=0$时,

假设结论对于$n’\le n-1, k’ \le k-1$时结论成立,那么

所以结论对$n’=n,k’=k$也成立,从而结论得证。

备注:

这里利用了如下恒等式

15

显然$I(n)$和$J(n)$的递推关系相同,为

其中$I(1)$无定义。

利用二进制表示法

我们有

注意到第一种情形对应$n\ge 2^{m} + 2^{m-1}$,第二种情形对应于$n < 2^m + 2^{m-1}$,那么

16

由递推式

可设

(1)

取$\gamma = 0$,那么利用13页的(1.18)可得

其中

因此

(2)

取$g(n)=n$,我们有

那么

是使得上式恒成立的参数,因此

由此可得

(3)

取$g(n)=1$,我们有

那么

是使得上式恒成立的参数,因此

将之前的结论代入验证这点:

结论成立。

考试题

17

假设$4$根柱子是的$a,b,c,d$,圆盘当前在柱子$a$上,目标是移动到柱子$b$上。

对于$W_{n(n+1) / 2}$,考虑如下移动方式:

  • 将前$n(n-1) / 2$个圆盘移动到$c$(可以使用$4$根柱子)
  • 将最后$n$个圆盘移动到$b$(可以使用$3$根柱子)
  • 将$c$上的$n(n-1) / 2$个圆盘移动到$b$(可以使用$4$根柱子)

所以:

然后对不等式两边同除$2^n$,我们有

累加可得

累加可得

18

只需证明$n\ge 2$时的结论,因为$n=1$时结论显然。

只要说明,折线对应的$2n$条直线都不平行,并且,$2n$条直线中任意三条直线不交与一点即可。

对于第一个结论,第$j$条折线的两部分斜率的倒数分别为:

所以折线对应的$2n$条直线都不平行。

对于第二个结论,分两种情形讨论:

  1. 两条直线来自于一组折线$j$,此时交点为$(n^{2j},0)$,另一条上直线必然不可能交于这点。

  2. 三条直线分别来自于不同折线,注意到折线$j$对应的直线可以写成

    所以条直线的交点为

    对于该交点,一共有四种情形(假设$j_1 > j_2$):

    • $i_1= i_2 = 1$:

    • $i_1= 1, i_2= 2$:

    • $i_1= i_2 = 2$:

  • $i_1= 2, i_2= 1$:

    • 注意到

      所以

      即交点的纵坐标属于区间

      对于$j_2\neq j_3$,显然有

      现在考虑直线$j_1,j_2,j_3$,其中$(j_1>j_2>j_3)$,$j_2$,$j_3$和$j_1$的交点记为$y_{j_1,j_2},y_{j_1,j_3}$,因为$y_{j_1,j_2},y_{j_1,j_3}$属于不相交的区间,所以

      这就说明任意三条直线不交于一点。

19

考虑两个折线相交的情形,最优的情况应该是两条折线有$4$个交点。

考虑如下三图,其中$\angle AO_1 B= \angle GO_2 B = \angle CO_3 D =\pi / 6 $。

$\angle DO_1 B \le \pi / 6$,此时只有$3$个交点:

$\pi / 6<\angle DO_1 B < 5\pi /6$,此时有$4$个交点:

$ 5\pi / 6 \le \angle DO_1 B \le \pi $,此时只有$3$个交点:

对每个折线,利用参数$(x, y, \theta)$描述,($x,y$为直线交点的坐标,$\theta$为直线和水平方向夹角,另一条直线和水平方向的夹角为$\theta+\pi /6$)那么从上图中可以看出,两个折线有$4$个交点当且仅当

对于$n$个折线,至少存在两个折线的夹角之差$\le {2\pi }/{n}$,所以如果

那么必然存在两个折线的交点不是$4$个,所以结论不成立。

从之前讨论中,不难将结论推广如下:

记第$n$条折线的夹角为$\theta_n\in [0, \pi)$,如果

那么当$n$充分大时,$n$条折线必然无法得到$Z_n$个区域。

20

由递推式

可设

取$\gamma_j = 0,j =0,1$,那么利用13页的(1.18)可得

其中

因此

(2)

取$h(n)=n$,我们有

那么

是使得上式恒成立的参数,因此

由此可得

(3)

取$h(n)=n^2$,我们有

那么

是使得上式恒成立的参数,因此

由此可得

结合

可得

因此

21

起点的选择是随意的,因为增加一定的偏移量即可。

这里不妨设以$n+1$为起点,那么选择$n+1,\ldots, 2n$的最大公约数$d$即可,这是因为

所以第一轮删去$n+1$,此时起点变成$n+2$。

对于第二轮,因为

所以第二轮删去$n+2$。

利用归纳法可得第$i$轮删去$n+i$,所以结论成立。

重点

4, 6, 10, 11, 12, 18, 19, 21