洛谷P1313:https://www.luogu.org/problemnew/show/P1313
思路
本题就是考查二次项展开 根据定理有:(ax+by)k=∑ki=0Cik*aibk-ixiyk-i
即推出xnym的系数是Cmk*anbm
代码
#include<iostream>
using namespace std;
#define mod 10007
int a,b,k,n,m,ans,A=
1,B=
1;
int c[
1002][
1002];
int main()
{
cin>>a>>b>>k>>n>>
m;
for(
int i=
1;i<=k;i++)
//杨辉三角推二次项系数
{
c[i][0]=c[i][i]=
1;
for(
int j=
1;j<=i-
1;j++
)
c[i][j]=(c[i-
1][j]+c[i-
1][j-
1])%
mod;
}
ans=c[k][m];
//第k行第m个 可以改成第k行第n个
a%=
mod;
b%=mod;
//先取% 不然只有60分
for(
int i=
1;i<=n;i++
)
A=A*a%mod;
//计算a^n
for(
int i=
1;i<=m;i++
)
B=B*b%mod;
//计算b^m
cout<<ans*A%mod*B%
mod;
}
View Code
转载于:https://www.cnblogs.com/BrokenString/p/9665237.html