数学课上引发的数学题:
两个人比赛,谁先赢下w局就胜出,那么一共有多少不同的比赛过程呢?
挺好玩的吧,解答如下:大家先画一个树形图玩玩,画到第五层是不是觉得特费劲了?可是不画又不行,如果光是想一个12345-n的表格就能解决的话,就需要极强的空间想象力了。
我这样的树形图画了不知道多少个,反正画到后面就看不清了,数数都会数错。一开始想这样算,就是把所有2的n次方算出来再减去不该出现的情况(就是不用比到最后就已经出结果的那种),结果,把我给算晕了,而且算到最后才发现我算得不是一个东西。差点就把程序写上去了,什么条件啊、递归啊全用到了。
回到家,脑袋似乎清醒了一些。这样想,如果至少赢w局的话,最爽快的情况应该是只比w场就结束吧,那么w-1场里面我要挑出w-1个胜利,全是一个人,也就是w-1Cw-1(为什么要-1等会说,反正这一步w-1和w一样的。-1可以这样理解,就是说在w-1步里面全是一个人胜利,那么这场必有一种情况是可以结束比赛的),因为有两个人,所以乘上二,就是两种。也就是说,在w场里结束比赛的情况有2*w-1Cw-1种。接下来我们这样思考,那么如果是恰好在w+1场结束比赛的情况呢?(注意是“恰好”,就是不包括少于w+1的情况,不要觉得现在吃亏了,只算了个恰好没有把所有的一起算进去,等会就真的吃亏了)那么在之前的w场里面,必然恰好有w-1个胜利归为一个人,但恰好有一场胜利是另一个人的。这样的情况就相当于在w中挑出w-1来,也就是wCw-1,同样的,有两个人,在乘上2,即2*wCw-1。大家应该理解这样以此类推的意思了吧,那么恰好在w+2场结束的情况呢?在之前的w+1场比赛中,恰好有w-1个胜利归为一个人,2场胜利归为另一个人。所以就是2*w+1Cw-1。
这样就不难发现规律了吧,全部都是2*nCw-1的形式,n从w-1一直加到2w-2(倒数第二次)。用一个求和公式就出来了:
发现有错一定要纠正我,我自己都不是很确定答案的正确性。
另外,大家还记得那个格子里面挖洞的题目吧,大意是这样的,在长为A宽为B的网格图内,挖一个长为a,宽为b的洞(洞的位置可用坐标(x,y)在答案中表示),请问,从左上角到右下角有多少不同的走法(仅限向右及向下走,洞的边缘可以走)
我把我做的答案贴出来,十分不确定,大家一定要多多指教。
我的思路是,要计算不过洞的走法,那我把总走法算出来-过洞的走法就行了。首先定义一个函数:f[(x1,y1),(x2,y2)] 代表的是从(x1,y1)到(x2,y2)的网格图内几种走法=(x2-x1+y2-y1)C(x2-x1)(x2>=x1,y2>=y1)
好了,现在的问题就是,必须让他过洞。于是我们将过洞分为三个步骤:
1.由起点出发先走到洞的边缘旁边一个(就是离洞的直线距离为1的格子),2.由边缘边缘出发走到洞的另一端边缘,3.由另一端边缘旁边一个出发到格子终点。
为什么说要旁边一个?就是为了避免重复。
这样子我们讲所有经过的路线以出发点与终止点没有重复的分了类,只要计算 求和(1*(2的所有点对点)×3)就可以了。具体的方程式我就不在这里列出了,太复杂了,我也在试着想更简洁的办法。