组合数学——不过对角线的格路问题
2015-04-27 17:26
615 查看
众所周知,格路问题是经典的组合数学问题,在n*n的格子盘中,对于从(0,0)->(n,m)的路线数为C(n+m,n),但是,如果加个要求:路线不允许穿过格子盘对角线,那又该怎么办呢?
如图所示,
![](http://img.blog.csdn.net/20150427170613143?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvWm91Q2hhcm1pbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
我们的目标是从(0,0)到(m,n),且不穿过对角线,即x=y线
做法如下:
首先,把对角线向右平移一个单位,把格子盘扩展为(n+1)*(n+1),此时的对角线变为y=x-1,由图可知,如果从(0,0)点出发,到达(m,n)的途中,如果经过y=x-1,那么该路径就一
定穿过了原来的对角线y=x,更神奇的是,如果从(0,0)关于y=x-1的对称点(1,-1)出发,到达(m,n)的话,必定穿过y=x-1,而且每条路径都对应着一条从(0,0)
出发到(m,n)并且经过y=x-1的路径,为什么会有一一对应关系呢?
看图:
![](http://img.blog.csdn.net/20150427171356651?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvWm91Q2hhcm1pbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
图中的坐标整体上移了一位,不影响观察
从图中不难看出,只要在第一个接触点之后保持路线一致,前面路线成对称状,那么就存在一一对应关系了。
所以,
路径数 = 总数 - 穿过对角线的数 = C(n+m,m)-C((m-1)+(n+1),m-1) = C(n+m,m)-C(m+n,m-1)。
如图所示,
我们的目标是从(0,0)到(m,n),且不穿过对角线,即x=y线
做法如下:
首先,把对角线向右平移一个单位,把格子盘扩展为(n+1)*(n+1),此时的对角线变为y=x-1,由图可知,如果从(0,0)点出发,到达(m,n)的途中,如果经过y=x-1,那么该路径就一
定穿过了原来的对角线y=x,更神奇的是,如果从(0,0)关于y=x-1的对称点(1,-1)出发,到达(m,n)的话,必定穿过y=x-1,而且每条路径都对应着一条从(0,0)
出发到(m,n)并且经过y=x-1的路径,为什么会有一一对应关系呢?
看图:
图中的坐标整体上移了一位,不影响观察
从图中不难看出,只要在第一个接触点之后保持路线一致,前面路线成对称状,那么就存在一一对应关系了。
所以,
路径数 = 总数 - 穿过对角线的数 = C(n+m,m)-C((m-1)+(n+1),m-1) = C(n+m,m)-C(m+n,m-1)。
相关文章推荐
- 组合数学中简单格路问题
- 04-06组合数学实践_交通问题
- 普通涂色问题 组合数学-Polya定理
- ACM学习历程20——竞赛中的简单数学问题之最大公约数、素数表、排列组合数
- Game of Connections -组合数学中的计数问题
- C/C++面试之算法系列--如何利用数学思想解1/2/5组合问题
- [数学]组合问题
- 小数学解决大问题 - 分类器组合方法(由民主投票想到)
- BZOJ 3505 浅谈组合数学在图形区域分割问题的应用
- 组合数学 - 放苹果问题
- 两人取石子游戏 组合数学-博弈问题
- java实现从M个元素中取N个元素的所有组合(数学中的组合问题)
- 组合数学——信封错装问题
- Topcoder SRM661 ColorfulLineGraphs,数学组合问题+快速幂求解
- 【组合数学】 04 - 基本计数问题
- 【组合数学+转化问题】BZOJ4005[JLOI2015]骗我呢
- 组合数学+错排问题【p4071】[SDOI2016]排列计数
- 组合数学 - 母函数 + 模板题 : 整数拆分问题
- 【组合数学】“派送食物问题”
- 组合数学经典问题---铺砖问题