hit2813 Garden visiting 关于组合数的一个简单的拆分求解

spoiler posted @ 2011年5月05日 16:57 in 数论 , 1730 阅读

题目大意:给你n * k 的矩形,始点在矩形的左上角,出口在矩形的右下角,求出最快走出这个矩阵的,方案数。

题目分析:最短的走出矩阵的方案的路程肯定是N+k,然后我们把这个路程离散化成N+K个状态,但是每种走法,的起点,跟终点的状态都一样的,只不过N+K-2里面有不同的走法, 我们换位思考一下,在N+K-2个状态里有有K-1个状态 分别投影在 K边的不同的点上面,因为,你必须往下移动K-1个单位才能到达出口,所以在竖直方向上必须有K-1个状态分别投影在K边的不同点上,这样我们就得出了方案数的组合数,就是在N+K-2里面选k-1个!公式: $$C_{n+k-2}^{k-1}$$

计算方面就是把这个组合数分别分解成素数,然后对素数进行求解,取模!

代码+部分注释:

 


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter