luogu P1313 计算系数

二项式定理
组合数取膜 费马小定理

#include<iostream>
using namespace std;
#define mod 10007
#define int long long 
int pow(int a,int b) {
    int ret = 1;
    for(;b;b >>= 1 , a = a * a % mod ) 
        if(b & 1) ret = ret * a % mod;
    return ret;
}
 main(){
    int a,b,k,m,n;
    cin>>a>>b>>k>>n>>m;
    int c = 1,d = 1;
    for(int i = 1;i <= n;i ++) c = c * i % mod;
    for(int i = k - n + 1;i <= k;i ++)  d=d*i % mod;
    d=d * pow(c,mod - 2) % mod; 
    d=d * pow(a,n) * pow(b,m) % mod;
    cout<<d<<endl;
    return 0;
}


posted @ 2018-04-28 10:43  zzzzx  阅读(140)  评论(0编辑  收藏  举报