萌新求助 RE
查看原帖
萌新求助 RE
720455
Rain_Carnation楼主2022/6/27 09:02

rt,样例过了,但是交上去就全部 RE,请问是为什么捏

#include<iostream>
#define int long long
#define QwQ cout<<"QwQ"<<endl;
using namespace std;
const int mod=1e9+7,N=1000100;
int qpow(int b,int e=mod-2){
	int a=1;
	while(e){
		if(e&1) a=1ll*a*b%mod;
		b=1ll*b*b%mod;
		e>>=1;
	}
	return a;
} 
int fac[N],inv[N];
signed main(){
	fac[0]=1; inv[0]=1;
	fac[1]=1; inv[1]=0;
	for(int i=2;i<=1000000;++i){
		fac[i]=1ll*fac[i-1]*i%mod;
		inv[i]=1ll*(inv[i-2]+inv[i-1])%mod*(i-1)%mod;
	}
	int t; cin>>t;
	while(t--){
		int n,m; scanf("%d%d",&n,&m);
		int ans=1ll*fac[n]*qpow(fac[m])%mod*qpow(fac[n-m])%mod;
		printf("%d\n",1ll*ans*inv[n-m]%mod);
	}
	return 0;
}
2022/6/27 09:02
加载中...