Paths on a Grid

时间:2024-01-01 20:47:39

http://poj.org/problem?id=1942

题意:一个n*m的格子,从左下角走到右上角有多少种走法,规定只能向上或向右走;

思路:解法挺水的,高中学组合数的时候老师给讲过;求C[m+n][n]就可以;

   但是这里n,m是32位以内的数,要用double,输出的时候只输出整数部分;

 #include<iostream>
#include<iomanip>
using namespace std; double n,m,ans;
int main()
{
cout<<fixed<<setprecision();
while(cin>>n>>m)
{
if(n == && m == )
break;
if(n > m) swap(n,m); ans = ;
for(unsigned i = ; i <= n; i++)
{
ans = ans*(m+i)/i;
}
cout<<ans<<endl;
}
return ;
}