POJ 1942 Paths on a Grid

解题思路:组合数学

1->递推:C(m,n)=c(m-1,n)+C(m,n-1),时间复杂度O(m*n)

2->组合 ,时间复杂度O(min(m,n))

 

代码
#include <iostream>
using namespace std;
int main()
{
__int64 i,m,n,ans;
while(scanf("%I64u %I64u", &m, &n)&&m+n)
{
if(m>n)swap(m,n);
for(ans=1,i=0;i<m;i++)
ans
=ans*(m+n-i)/(i+1);
printf(
"%I64u\n",ans);
}
return 0;
}

 

posted on 2010-12-31 10:22  ltang  阅读(239)  评论(0)    收藏  举报

导航