题目地址:POJ 1942
这题就是求组合数c(n,n+m),高中的时候做过这种组合题,现在居然推不出来了。。sad。。。时光催人老。。。。
代码如下:
#include <iostream> #include <string.h> #include <math.h> #include <queue> #include <algorithm> #include <stdlib.h> #include <map> #include <set> #include <stdio.h> using namespace std; #define LL __int64 #define pi acos(-1.0) const int mod=100000000; const int INF=0x3f3f3f3f; const double eqs=1e-8; LL c(LL x, LL y) { int i; double ans=1; for(i=1;i<=x;i++){ ans*=(y-i+1)*1.0/i; } return (LL) (ans+0.5); } int main() { LL n, m; while(scanf("%I64d%I64d",&n,&m)!=EOF&&n+m){ if(n>m) swap(n,m); printf("%I64d\n",c(n,n+m)); } return 0; }
POJ 1942 Paths on a Grid (组合数学)
原文地址:http://blog.csdn.net/scf0920/article/details/43024147