比赛 |
防止颓废的小练习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;
}