【悬赏关注】爆零求调
查看原帖
【悬赏关注】爆零求调
999274
CNS_5t0_0r2楼主2024/1/27 09:25
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N = 1009,MOD = 10007;
int a,b,k,n,m;
int f[N][N];
int qpow(int x,int y){
	int ret = 1;
	while(y){
		if(y & 1)
			ret = ret * x % MOD;
		ret = ret * ret % MOD;
		y >>= 1;
	}
	return ret;
}
signed main(){
	cin >> a >> b >> k >> n >> m;
	a %= MOD;b %= MOD;
	for(int i = 1;i <= k;i++)
		f[i][0] = f[i][i] = 1;
	for(int i = 1;i <= k;i++)
		for(int j = 1;j < i;j++)
			f[i][j] = (f[i - 1][j] + f[i][j - 1]) % MOD;
	if(m + n != k)
		cout << 0;
	else
		cout << qpow(a,n) * qpow(b,m) % MOD * f[k][n] % MOD;
	return 0;
}
2024/1/27 09:25
加载中...