[福建2011Day2]组合数

成绩 0 开启时间 2013年02月21日 星期四 23:00
折扣 0.8 折扣时间 2013年02月28日 星期四 23:00
允许迟交 关闭时间 2013年02月28日 星期四 23:00
输入文件 com.in 输出文件 com.out
【问题描述】
组合数C(N, K)表示了N个数字不重复地选取K个作组合的方案数。
C(N, K) = N!/(N-M)!M!
当然,在取余数的条件下,由于除法的限制,上述公式求C(N, K) mod H不方便,并且高精度除法也不容易写,所以一般情况下我们采取的是下列方法。
若N,K不大,可以通过递推的方法求出所有组合数。
首先,N个数取0个数显然只有1种方案,那就是什么都不取;
接着,N个数取N个数的组合显然也只有1种方案。
所以C(N, 0) = 1,C(N, N) = 1
其他情况下,C(N, K) = C(N - 1, K) + C(N – 1, K – 1),这样就可以通过递推求出所有组合数。
你可以看到,其实结果其实就是杨辉三角形。

现在对于给定的N和K,请输出C(N, K) mod 100003。

【输入】

输入文件com.in共1行。
第1行为两个非负整数N,K。

【输出】
输出文件com.out共一行。
包括1个非负整数。
【输入输出样例】
com.in       com.out 
4 2               6
【数据范围】
对于40%的数据,N≤50
对于100%的数据,N≤1000,K≤1000。