对照题解代码任然没有发现问题···50分
#include <bits/stdc++.h>
using namespace std;
const long long mod=10007;
long long a,b,k,n,m,c[1007][1007];
long long mypow(long long x,long long y){
int ans=1,base=a;
while(y>0){
if(y&1){
ans=(ans*base)%mod;
}
base=(base*base)%mod;
y>>=1;
}
return ans%mod;
}
int main(){
cin>>a>>b>>k>>n>>m;
a%=mod;
b%=mod;
long long minn=min(m,n);
for(int i=1; i<=k; i++){
c[i][0]=1;
c[i][i]=1;
}
for(int i=2; i<=k; i++){
for(int j=1; j<=i; j++){
c[i][j]=(c[i-1][j-1]+c[i-1][j])%mod;
}
}
long long asd=c[k][minn]%mod;
asd=(asd*(mypow(a,n)%mod))%mod;
asd=(asd*(mypow(b,m)%mod))%mod;
cout<<asd;
return 0;
}