#1097. 公式求值

    ID: 1097 Type: Default 1000ms 128MiB Tried: 0 Accepted: 0 Difficulty: 2 Uploaded By: Tags>分支结构数学素数筛进制转换

公式求值

说明

&nbsp 历届试题&nbsp 公式求值&nbsp  
时间限制:1.0s&nbsp  &nbsp 内存限制:256.0MB
 &nbsp  &nbsp
问题描述
  输入n,&nbsp m,&nbsp k,输出下面公式的值。

  其中C_n^m是组合数,表示在n个人的集合中选出m个人组成一个集合的方案数。组合数的计算公式如下。

输入格式
  输入的第一行包含一个整数n;第二行包含一个整数m,第三行包含一个整数k。
输出格式
  计算上面公式的值,由于答案非常大,请输出这个值除以999101的余数。
样例输入
3
1
3
样例输出
162
样例输入
20
10
10
样例输出
359316
数据规模和约定
  对于10%的数据,n≤10,k≤3;
  对于20%的数据,n≤20,k≤3;
  对于30%的数据,n≤1000,k≤5;
  对于40%的数据,n≤10^7,k≤10;
  对于60%的数据,n≤10^15,k&nbsp ≤100;
  对于70%的数据,n≤10^100,k≤200;
  对于80%的数据,n≤10^500,k&nbsp ≤500;
  对于100%的数据,n在十进制下不超过1000位,即1≤n< 10^1000,1≤k≤1000,同时0≤m≤n,k≤n。
提示
  999101是一个质数;
  当n位数比较多时,绝大多数情况下答案都是0,但评测的时候会选取一些答案不是0的数据;