1478: 组合数

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:15 解决:7

题目描述

组合数C(N, K)表示了N个数字不重复地选取K个作组合的方案数。

C(N, K) = N!/(N-M)!M!

当然,在取余数的条件下,由于除法的限制,上述公式求C(N, K) mod H不方便,并且高精度除法也不容易写,所以一般情况下我们采取的是下列方法。

NK不大,可以通过递推的方法求出所有组合数。

首先,N个数取0个数显然只有1种方案,那就是什么都不取;

接着,N个数取N个数的组合显然也只有1种方案。

所以C(N, 0) = 1C(N, N) = 1

其他情况下,C(N, K) = C(N - 1, K) + C(N ? 1, K ? 1),这样就可以通过递推求出所有组合数。

你可以看到,其实结果其实就是杨辉三角形。

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

输入

1行为两个非负整数NK

输出

包括1个非负整数,

样例输入 复制

4 2

样例输出 复制

6

提示

【数据规模】

对于100%的数据,N1000K1000