Lattice paths

Problem 15

Starting in the top left corner of a 2×2 grid, and only being able to move to the right and down, there are exactly 6 routes to the bottom right corner.

How many such routes are there through a 20×20 grid?

Answer:

137846528820

Completed on Wed, 26 Oct 2016, 14:59

题解:组合问题。在每一个路径中,都会有20次横向和20次纵向移动。如果把横向移动记为1,纵向移动记为0,那么问题就变成一个40位数字中有20个1和20个0的组合数。所以答案就是C(20,40)。


代码:


#include<cstdio>
#include<iostream>
using namespace std;

int main()
{
long long ans1=1;
int j=1;
for(int i=21;i<=40;i++)
{
ans1=(ans1*i)/j;
j++;
if(j>20)break;
}
cout<<ans1<<endl;
return 0;
}