请教一个排列组合的问题
题目是“国际象棋中的车可以水平的或竖直的移动,一个车要从一个棋盘的一角移到对角线的另一角,有多少种最短路径?”。写题目文章的人给出两种方法,一个是动态规划,这个我看懂了。还是一个方法是“b.用高中学的初等排列组合知识求解”,即N行N列的棋盘,方法总数为C(2N-2, N-1)。
我就是不明白,用排列组合的方法是个什么思路?
[解决办法]
假设车要从左下角移动到右上角,且路径最短,则只要整个移动路径中有N-1次右移,N-1次上移即可。而总移动步数必然为2*N-2步。此时,最短路径条数即为从2N-2中选择出N-1个(作为右移或上移均可)。
[解决办法]
所谓最短路径在本问题中就是 不要没事转圈
那么只要右移n-1步,上移n-1步就可以到达目标
共2n-2步
把这2n-2步想象成2n-2个 0、1 的组合,0代表右移,1代表上移
那么这2n-2个0/1 组成的字符串有多少种呢?
这么理解应该简单些了吧
[解决办法]
看来LZ对数学中的组合还不是很理解
5楼已经说明:把这(2n-2)步想象成(n-1)个0和(n-1)个1的组合,0代表右移,1代表上移
那这(2n-2)步中的哪(n-1)步放入0,即为组合C(2n-2,n-1),剩下的(n-1)步必须放入1