AT3965 RE了,求助!
  • 板块题目总版
  • 楼主微分几何
  • 当前回复4
  • 已保存回复4
  • 发布时间2020/12/1 10:11
  • 上次更新2023/11/5 06:59:31
查看原帖
AT3965 RE了,求助!
120190
微分几何楼主2020/12/1 10:11
#include<bits/stdc++.h>
using namespace std;
const int maxn=3e6+10;
const long long P = 998244353;
long long Pow(long long x, long long k)//大指数幂取模运算,x为底数,k为指数,计算x^K对P取模的值
{
    long long ret = 1;
    for (; k; k >>= 1, x = x * x % P) if (k & 1) ret = ret * x % P;
    return ret%P;
}

long long num[maxn];
long long C(long long n,long long m)
{
	if(m==1)	return n;
	if(m==n)	return 1;
	long long s1=num[n],s2=(num[m]*num[n-m])%P;
	return (s1*Pow(s2,P-2))%P;
}

int main()
{
	long long n,A,B,k;
	cin>>n>>A>>B>>k;
	
	if(k==0)
	{
		cout<<"1"<<endl;
		return 0;
	}
	num[1]=1;
	for(int i=2;i<=n;i++)
	{
		num[i]=num[i-1]*i;
		num[i]%=P;
	}
	
	long long ans=0;
	for(long long x=0;x<=n;x++)
	{
		if((k-A*x)%B==0&&(k-A*x)/B<=n)
		{
			ans+=(C(n,x)*C(n,(k-A*x)/B))%P;
			ans%=P;
		}
	}
	cout<<ans<<endl;
    return 0;
}
2020/12/1 10:11
加载中...