rt。
https://www.luogu.com.cn/record/194188827
#include <bits/stdc++.h>
using namespace std;
const int p = 10007;
int a, b, k, n, m;
int f[1005][1005];
int quickpow(int x, int y) {
int res = 1, base = x % p;
while (y) {
if (y & 1) (res *= base) %= p;
(res *= res) %= p;
y >>= 1;
}
return res;
}
int main() {
scanf("%d%d%d%d%d", &a, &b, &k, &n, &m);
++k;
for (int i = 1; i <= k; i++) f[i][1] = f[i][i] = 1;
for (int i = 3; i <= k; i++)
for (int j = 2; j < i; j++)
f[i][j] = (f[i - 1][j] + f[i - 1][j - 1]) % p;
printf("%d\n", f[k][m + 1] * quickpow(a, n) % p * quickpow(b, m) % p);
return 0;
}