高级计数技术课后题答案.docx

上传人:b****5 文档编号:3409897 上传时间:2022-11-22 格式:DOCX 页数:83 大小:65.57KB
下载 相关 举报
高级计数技术课后题答案.docx_第1页
第1页 / 共83页
高级计数技术课后题答案.docx_第2页
第2页 / 共83页
高级计数技术课后题答案.docx_第3页
第3页 / 共83页
高级计数技术课后题答案.docx_第4页
第4页 / 共83页
高级计数技术课后题答案.docx_第5页
第5页 / 共83页
点击查看更多>>
下载资源
资源描述

高级计数技术课后题答案.docx

《高级计数技术课后题答案.docx》由会员分享,可在线阅读,更多相关《高级计数技术课后题答案.docx(83页珍藏版)》请在冰豆网上搜索。

高级计数技术课后题答案.docx

高级计数技术课后题答案

196章高级计数技术

第8章

先进的计数技术

第8.1节定期关系的应用

2.a)具有n个元素的集合的排列由第一个元素的选择组成(可以在n中完成)

的方法),然后是具有n-1元素的集合的排列。

所以Pn=nPn−1。

请注意,P0=1,

因为没有对象的集合只有一个排列,即空序列。

b)Pn=nPn−1=n(n-1)Pn−2···=n(n-1)··2·1·P0=n!

4.这类似于练习3,并以完全相同的方式解决。

递归关系为an−1+

an−2+2an−5+2an−10+an−20+an−50+an−100。

这将是相当乏味的写下100首

条件。

6.a)让sn成为此类序列的数量。

以n结尾的字符串必须由以某物结尾的字符串组成

少于n,然后是n作为最后一个学期。

因此,定期关系是sn=sn−1+sn−2+

···+s2+s2。

下面是另一种方法,答案的形式更加紧凑。

n是以n−1结尾的序列,然后是n(并且显然有sn−1),否则它确实有

根本不包含n−1作为一个术语,在这种情况下,它是相同的序列结束在n-1,其中

n−1已被n替换(并且清楚地有sn−1这些)。

因此sn=2sn−1。

最后,我们注意到,我们可以从第一个(或反之亦然)代数推导出第二种形式(例如,

s4=2s3=s4+s4=s4+s4+s4=s4+s4+s4)。

b)如果我们使用上面的第二个公式,s1=1和s1=1,我们需要两个初始条件(否则,

我们的论点是无效的,因为第一个和最后一个术语是相同的)。

有一个序列以1结尾,

即序列中只有这个1,只有序列1,2结束在2。

如果我们使用第一个

上面的公式,那么我们可以通过只有初始条件s1=1。

c)显然,解决这种递推关系和初始条件是sn=2n−2所有n"2。

8.这与练习7非常相似,只是我们需要深入一级。

a)让一个是长度为n的位字符串的数量,其中包含三个连续的0s。

为了构造一个位

字符串的长度n包含三个连续0的,我们可以开始与1,并跟一个字符串的长度n−1

包含三个连续0的,或者我们可以从01开始,然后用一个长度n−2的字符串

连续3个0的,或者我们可以从001开始,然后以包含三个长度的n−3的字符串

连续0的,或者我们可以开始与000,并跟在任何字符串的长度n−3。

这四个案例

是相互排斥的,并用尽了字符串可能如何启动的可能性。

通过这一分析,我们可以

立即记下定期关系,对所有n"3"有效:

an−1+an−2+an−3+2n−3。

b)没有长度为0、1或2的位字符串,其中包含三个连续的0的,因此初始条件为

a0=a1=a2=0。

第8.1节定期关系的适用197

c)我们将使用递归关系计算a3到a3:

a3=a2+a1+a0+20=0+0+0+1=1

a4=a4+a2+a1+21=1+0+0+2=3

a5=a5+a5+a2+22=3+1+0+4=8

a6=a6+a6+a6+23=8+3+1+8=20

a7=a7+a7+a7+24=20+8+3+16=47

因此,有47位长度为7的字符串,其中包含三个连续的0。

10.首先,让我们在根本不使用重复关系的情况下解决这个问题。

很明显,唯一的字符串,

不包含字符串01是那些由一个字符串的1的后面由一个字符串的0。

该字符串可以

由0到n1的任意位置组成,因此此类字符串的数量为n+1。

其余的都至少有一个

发生01。

因此,包含01的位字符串数2n−(n+1)。

但是,这种方法

不符合本练习的说明。

a)让一个包含01的长度为n的位字符串的数量。

如果我们想构造这样一个字符串

我们可以从1开始,并跟随它的长度为位字符串n−1,其中包含01,并有an−1

这些。

或者,对于从1到n-1的任何k,我们可以从k0开始,从1开始,然后再

遵循任何n−k-1位。

对于每一个这样的k都有2n−k−1这样的字符串,因为最后的位是自由的。

所以这样串的数量是20+21+22+···+2n−2,等于2n−1-1。

因此,我们的复发

关系为an−1+2n−1-1。

它适用于所有n"2。

b)初始条件为a0=a1=0,因为长度小于2的字符串中不能有01。

c)我们将使用递归关系计算a2到a7:

a2=a1+21-1=0+2-1=1

a3=a2+22-1=1+4-1=4

a4=a4+23-1=4+8–1=11

a5=a5+24-1=11+16-1=26

a6=a6+25-1=26+32-1=57

a7=a7+26-1=57+64-1=120

因此,有120位字符串的长度7包含01。

请注意,这与我们的非递归分析一致,

从27−(7+1)=120。

12.这与练习11相同,更深层次。

a)让多少种爬楼梯的方法。

为了爬楼梯,一个人必须要么开始

用一个楼梯的台阶,然后爬上n-1级楼梯(这可以用an−1的方式来完成),或者从一个楼梯开始

两个楼梯的步骤,然后爬上n−2楼梯(这可以用an−2的方式完成),否则从一步开始

三个楼梯,然后爬上n−3楼梯(这可以用an−3的方式)。

通过这一分析,我们可以

立即记下定期关系,对所有n"3"都有效:

an−1+an−2+an−3。

b)初始条件是a0=1、a1=1和a2=2,因为没有楼梯爬楼梯有一种方法(做

没什么),显然只有一种方法可以爬上一个楼梯,只有两种方法可以爬两个楼梯(一步两步或两步)

步骤一次)。

请注意,重复关系与练习9的关系相同。

c)序列中的每个术语{a}都是前三个术语的总和,因此序列开始于a0=1,

a1=1,a2=2,a3=4,a3=7,a3=13,a3=24,a3=44,a3=81。

因而一个人可能攀登飞行8

楼梯在81方式下的限制在这个问题上。

14.a)让一个是包含两个连续0的三元字符串的数量。

为了构造这样一个字符串,我们

可以从1或2开始,然后以包含两个连续0的字符串(这可以是

198章高级计数技术

以2an−1方式)完成,或者我们可以从01或02开始,然后用一个包含两个连续的字符串

0的(这可以通过2an−2的方式来完成),我们可以从00开始,然后跟随任何三元字符串的

长度n-2(其中有明显的3n−2)。

因此,对所有n"2有效的递推关系是

2an−1+2an−2+3n−2。

b)显然a0=a1=0。

c)我们将使用递归关系计算a2到a6:

a2=2a1+2a1+30=2a10+2·0+1=1

a3=2a2+2a2+31=2a21+2·0+3=5

a4=2a3+2a2+32=2·5+2·1+9=21

a5=2a4+2a4+33=2·21+2·5+27=79

a6=2a5+2a5+34=2·79+2·21+81=281

因此,有281位长度为6的字符串,其中包含两个连续的0。

16.a)让一个是包含两个连续0的或两个连续的1的三元字符串的数量。

构造这样一个字符串,我们可以从一个2开始,然后用一个包含两个连续0的字符串

或两个连续的1,这可以通过an−1的方式来实现。

不过,还有其他可能性。

对于每个

k从0到n−2,字符串可以从n−1−k交替0和1开始,然后是2,然后是2,然后

后跟一个长度k的字符串,其中包含两个连续的0或两个连续的1。

的数量

这样的字符串是2ak,因为有两种方式为初始部分的交替。

另一种可能是

字符串根本没有2的。

然后,它必须包括n−k-2交替0和1,然后是一对0的

或1的,后面跟任何长度k的字符串。

有2·3k这样的字符串。

现在这些数量的总和作为

k从0运行到n−2是(因为这是一个几何级数)3n−1-1。

把这一切放在一起,我们有

以下重复关系,对所有n"2有效:

a=an−1+2an−2+2an−3+···2\+3n−1。

(由

从与n-1替换为n的相同关系中减去这种递推关系,我们可以得到

以下闭合形式递推关系这个问题:

一个=2an−1+an−2+2·3n−2)

b)显然a0=a1=0。

c)我们将使用递归关系计算a2到a6:

a2=a1+2a0+31-1=0+2a00+3-1=2

a3=a2+2a1+32-1=2+2a10+2·0+9-1=10

a4=a4+2a2+2a2+33-1=10+2a22+2·0+2·0+27-1=40

a5=a5+2a3+2a2+2a1+2a0+34-1=40+2·10+2·2+2·0+2·0+81-1=144

a6=a6+2a4+2a4+2a2+2a1+2a0+35-1

=144+2·40+2·10+2·2+2·0+2·0+243-1=490

因此,有490长度为6的三元字符串,包含两个连续的0或两个连续的1。

18.a)让一个是包含两个相同的连续符号的三元字符串的数量。

我们会的

利用三个符号之间的对称性,发展出一个递推关系。

特别是,它

必须是这样的情况下,这样的字符串开始与三个符号中的每一个。

现在让我们来看看我们如何

指定满足条件的长度n的字符串。

我们可以通过三种方式中的任意一种选择第一个符号。

我们可以遵循一个字符串,该字符串以不同的符号开头,但其中有一对连续的符号;

根据我们刚才所说的,这样的字符串2an−1/3。

或者,我们可以按照最初的象征

由本身的另一个副本,然后任何字符串的长度n−2;显然有这样3n−2字符串。

因此,

复发关系是一个=3·(2an−1/3)+3n−2)=2an−1+3n−1。

它适用于所有n"2。

b)显然a0=a1=0。

第8.1节定期关系的适用199

c)我们将使用递归关系计算a2到a6:

a2=2a1+31=2a10+3=3

a3=2a2+32=2a23+9=15

a4=2a3+33=2·15+27=57

a5=2a4+34=2·57+81=195

a6=2a5+35=2·195+243=633

因此,有633位长度为6的字符串,包含两个连续的0、1或2。

20.我们让许多方法支付5美分的通行费。

(显然,没有办法支付的通行费是

5美分的倍数。

a)此问题与练习11同构,因此答案是相同的:

a=an−1+an−2,与a0=a1=1。

b)迭代,我们发现a9=55。

我们从计算前几个术语开始,了解正在发生的事情。

显然R1=2,因为

赤道,比如说,把球体分成两个半球。

此外,R2=4,R3=8。

让我们试着分析一下

当增加第n个大圆圈时,会发生什么。

它必须相交的每一个其他圆圈两次(在

截然相反的点),并且每个这样的交集将导致一个先前的区域被拆分为两个

地区,如在练习21。

有n-1以前的大圆圈,因此2(n-1)新的区域。

所以Rn=Rn−1+2(n-1)。

如果我们施加初始条件R1=2,那么我们的值R2和R3

上面发现的与这种复发是一致的。

请注意,R4=14,R5=22,依此类推。

b)我们遵循通常的技术,如第2.4节第17部分。

在最后一行中,我们使用熟悉的公式

第一个n−1正整数的总和。

请注意,公式与上面计算的值一致。

Rn=2(n-1)+Rn−1

=2(n-1)+2(n-2)+Rn−2

=2(n-1)+2(n-2)+2(n-3)+Rn−3

...

=2(n-1)+2(n-2)+2(n-3)+2·1+R1

=n(n2)+2=n2-n+2

24.让en为长度为n的位序列的数目,其偶数为0的。

请注意,因此,

奇数为0的2n-en位序列。

有两种方法可以获得长度n的位字符串。

一个偶数的0的。

它可以从1开始,后面是一个长度为n−1的位字符串,甚至

0的数量,并有en−1这些;或者它可以从0开始,后面是一个长度的位字符串

n-1与奇数0的,并有2n−1-en−1这些。

所以en=en−1+2n−1-en−1,

或简单的en=2n−1。

另见第6.4节第31部分。

26.让一个覆盖物的数量。

a)我们遵循的提示。

如果最右边的多米诺骨牌垂直定位,那么我们就有了最左边的覆盖物

n-1列,这可以通过an−1的方式来实现。

如果最右边的多米诺骨牌水平放置,

那么它的正下方一定有另一个多米诺骨牌,这些都覆盖了最后两列。

中。

第一n−2列,因此将需要包含一个覆盖的多米诺骨牌,这可以通过an−2的方式。

因此,我们得到斐波那契复发一个=an−1+an−2。

b)显然a1=1和a2=2。

c)我们得到的序列只是斐波那契序列,由一个移动。

因此,序列是1,2,3,5,8,

13,21,34,55,89,144,233,377,610,987,1597,2584,......,所以这一部分的答案是2584。

第200章高级计数技术

28.初始条件当然是正确的。

我们证明了复发关系的归纳上的n,从

基本案例n=5和n=6,在这种情况下,我们发现5f1+3f0=5=f5和5f1+3f0=8=f6。

假设归纳假说。

然后,我们有5fn−4+3fn−5=5(fn−5fn−6)+3(fn−6+fn−7)=

(5fn−5+3fn−6)+(5fn−6+3fn−7)=fn−1+fn−2=fn(我们同时使用了归纳假设和递归

斐波那契数字的定义)。

最后,我们证明了f5n是可被5通过诱导在n上的。

那是真的

n=1,因为f5=5可被5整除。

假设f5n是真的。

然后f5(n+1)=f5n+5=5f5n+1+3f5n

可被5整除,因为这两个求和在这个表达式是可分的由5。

30.a)我们根据最外层点的位置,从左到右进行系统的工作:

x0·(x1·(x2·(x3·x4))

x0·(x1·((x2·x3)·x4))

x0·((x1·x2)·(x3·x4)

x0·(x1·(x2·x3))·x4)

x0·((((x1·x2)·3·x4)

(x0·x1)·(x2·(x3·x4)

(x0·x1)·((x2·x3)·x4)

(x0·(x1·x2)·(x3·x4)

((x0·x1)·2)·(x3·x4)

(x0·(x1·(x2·x3))·x4

(x0·((x1·x2)·3))·x4

((x0·x1)·(x2·x3))·x4

(x0·(x1·x2)·x3)·x4

((((x0·x1)·2·x3)·x4

b)我们从示例5中了解到C0=1,C1=1,C3=5。

这也是很容易看到,C2=2,因为

只有两种方法可以将三个数字的乘积作为括号。

因此,定期关系告诉

我们,C4=C0C3+C1C2+C2C1+C3C0=1·5+1·2+2·1+5·1=14。

我们有正确的数量

上面列出的解决方案。

c)这里n=4,所以公式给出15

C(8,4)=15·8·7·6·"!

"=14。

32.我们让这一难题达到所需的步数。

a)为了将底部磁盘移出挂钩1,我们必须将其他n−1磁盘转移到挂钩3(因为

我们必须移动底部磁盘挂钩2);这将需要an−1步骤。

然后我们可以移动底部的磁盘

挂钩2(再走一步)。

不过,我们的目标是将其移动到挂钩3,所以现在我们必须移动另一个n-1

磁盘从挂钩3回到挂钩1,留下底部的磁盘安静地休息在挂钩2。

通过对称性,这再次

采取an−1的措施。

再走一步,我们就可以把底部的磁盘从挂钩2移动到挂钩3。

现在它需要an−1的步骤

将剩余磁盘从挂钩1移动到挂钩3。

因此,我们的递归关系是3an−1+2。

最初的

条件当然是a0=0。

b)计算前几个值,我们发现a1=2,a2=8,a3=26,a3=80。

它出现

a=3n-1。

归纳很容易验证这一点:

基本情况是01=30-1=1-1=0,并且

3an−1+2=3·(3n−1-1)+2=3np-3+2=3n-1=。

c)分发磁盘的唯一选择是将每个磁盘挂钩,因为磁盘上的顺序

给出的挂钩是固定的。

由于每个磁盘有三种选择,因此答案是3n。

d)拼图涉及1+a=3n磁盘的安排,在其解决方案-初始安排和

每次移动后的安排。

这些安排都不能重复以前的安排,因为如果

第8.1节定期关系的适用201

它这样做,将没有必要使相同的两个事件之间的移动

安排。

因此,这些3n安排都是不同的。

我们在(c)部分看到,正好有3n

安排,所以每一个安排都使用。

34.如果我们遵循这个提示,那么它肯定看起来像J(n)=2k+1,其中k是剩余的金额之后的

从n中减去了最大可能的2功率(即,n=2m+k和k<2m)。

36.基础步骤是微不足道的,因为当n=1=20+0,猜想在练习34陈述那J(n)=

2·0+1=1,这是正确的。

对于归纳步骤,我们看两个情况下,取决于是否有

是一个偶数或奇数的球员。

如果有2n个玩家,假设2n=2m+k,如在

练习34的提示。

然后k必须是偶数,我们可以编写n=2m−1+(k/2)和k/2<2m−1。

通过

归纳假说,J(n)=2(k/2)+1=k+1。

然后通过练习35的复发关系,

J(2n)=2J(n)-1=2(k+1)-1=2k+1,如有需要。

对于另一种情况,假设有2n+1

球员,并再次写2n+1=2m+k,在练习34的提示。

那么k一定很奇怪,我们可以写

n=2m−1+(k-1)/2,其中(k-1)/2<2m−1。

由归纳假说,J(n)=2((k-1)/2)+1=k。

然后根据练习35的重复关系,J(2n+1)=2J(n)+1=2k+1。

38.由于我们一次只能移动一个磁盘,因此我们需要一个移动来将最小的磁盘从中间磁盘上抬起,

和另一个解除中间盘最大。

同样,我们需要两个动作来重新加入这些磁盘。

当然,我们至少需要一个移动,以获得最大的磁盘挂钩1。

因此,我们可以做不超过五个

移动。

为了看到这是可能的,我们只是做明显的动作(磁盘1是最小的,和一个b-#c的手段

将磁盘b从挂钩a移动到挂钩#2:

1-,12−#3,13-#4,32-#4,21-#4。

40.在我们的符号中(参见练习38),磁盘1是最小的,磁盘n是最大的,b-#c的手段是移动磁盘

b从挂钩a到挂钩c。

a)根据该算法,我们采取k=3,因为5是在三角数字t2=3和t2=6之间。

移动是首先移动5-3=2个磁盘从挂钩1到挂钩2(1-#3,12-#2,31-#2),然后与

挂钩1、3和4移动磁盘3、4和5以挂钩4(13-#4、14-4−#3、43−#3、15名-#4、33-3-#1、13-3-#4)和

然后将磁盘1和2从挂钩2移动到挂钩4(21-#3、22-#4、31-#4)。

请注意,这总共需要13个动作。

b)根据算法,我们采取k=3,因为6是在三角数字t2=3和t2=6之间。

移动是首先移动6-3=3个磁盘从挂钩1到挂钩2(1-#3,12-2−#4,13-#2,42-#2,31-#2),然后

使用挂钩1、3和4移动磁盘4、5和6以挂钩4(14-#4、15−#3、44-4-#3、16-4-#4、3-4-#1、35-#4、

14-第1条#4),然后将磁盘1、2和3从挂钩2移动到挂钩4(21-#3、22-#1、2-3-#4、12-#4、3-1-#4)。

注意

这总共需要17个动作

c)根据算法,我们采取k=4,因为7是在三角数字t3=6和t3=10之间。

移动是首先移动7-4=3个磁盘从挂钩1到挂钩2(五个移动,如在第(b)部分),然后工作

用挂钩1、3和4个移动磁盘4、5、6和7挂钩4(15个移动,使用通常的河内塔算法),

然后将磁盘1、2和3从挂钩2移动到挂钩4(再次5次移动,如(b)部分)。

请注意,这需要

总共25个动作。

d)根据该算法,我们采取k=4,因为8是在三角数字t3=6和t3=10之间。

移动是首先移动8-4=4个磁盘从挂钩1到挂钩2(9个动作,如练习39,与挂钩2

扮演挂钩4的角色),然后使用挂钩1、3和4移动磁盘5、6、7和8以挂钩4(15个移动,

使用通常的河内塔算法),然后将磁盘1、2、3和4从挂钩2移动到挂钩4(再次为9

动,如上所示)。

请注意,这总共需要33个动作。

42.为了澄清这个问题,我们注意到k被选择为最小的非负整数,例如n$k(k+1)/2。

如果n−1%=k(k-1)/2,则此相同的k值也适用于n-1;否则,n−1的值是

k-1。

如果n-1%=k(k-1)/2,它也通过减去

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1