比赛 防止颓废的小练习v0.15 评测结果 AAAAAAAAAA
题目名称 计算系数 最终得分 100
用户昵称 Kulliu 运行时间 0.056 s
代码语言 C++ 内存使用 8.00 MiB
提交时间 2016-10-17 20:17:45
显示代码纯文本
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
const int MOD=10007,Tmax=1005;
long long int a,b,n,s,t,C[Tmax][Tmax],sum;
long long int Tpow(int x,int p)
{
    long long int tmp=x,ans=1;
    while(p>0)
    {
        if(p&1) ans=(ans*tmp)%MOD;
        tmp=(tmp*tmp)%MOD;
        p>>=1;
    }
    return ans;
}
void work()
{
    int i,j;
    for(i=1;i<=n;i++)
    {
        C[i][0]=C[i][i]=1;
        for(j=1;j<=i-1;j++)
          C[i][j]=(C[i-1][j-1]+C[i-1][j])%MOD;
    }
    sum=(C[n][s]*Tpow(a,s)*Tpow(b,t))%MOD;
    return;
}
int main()
{
    freopen("factor.in","r",stdin);
    freopen("factor.out","w",stdout);
    scanf("%lld %lld %lld %lld %lld",&a,&b,&n,&s,&t);
    work();
    printf("%lld",sum);
    return 0;
}