样例#2#8不过求改
查看原帖
样例#2#8不过求改
363491
U_92_Uranium楼主2022/9/24 21:00

R.T.R.T.

感谢大佬帮助!

#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <string>
#include <cctype>
#include <cstdlib>
#include <utility>
#include <queue>
#include <stack>
#include <deque>
#include <iomanip>
#include <vector>
#include <list>
#include <set>
using namespace std;
const int mod=10007,maxn=1e3; 
int yh[maxn+5][maxn+5];
int a,b,k,n,m;
int ans;
int qpow(int a,int b)
{
	int res=1;
	while(b>0) {
		if(b&1) {
			res=(res%mod*a%mod)%mod;
		} 
		a=(a%mod*a%mod)%mod;
		b>>=1;
	}
	return res;
}

int main()
{
	scanf("%d%d%d%d%d",&a,&b,&k,&n,&m);
	for(int i=1; i<=k+1; ++i) {
		yh[i][1]=1;
	}
	for(int i=2; i<=k+3; ++i) {
		for(int j=1; j<=i; ++j) {
			yh[i][j]=(yh[i-1][j]%mod+yh[i-1][j-1]%mod)%mod;
		}
	}
	ans=(yh[k+1][k-n+1]%mod*qpow(a,n)%mod)%mod;
	ans=(ans*qpow(b,m)%mod)%mod;
	printf("%d",ans);
	return 0;
}

2022/9/24 21:00
加载中...