牛客练习赛62 病毒扩散,找规律+组合数(杨辉三角)

病毒扩散

https://ac.nowcoder.com/acm/contest/5205/B

博客看大图


#include<bits/stdc++.h>
using namespace std;
const int mod=998244353,T=5e3+10,N=1e3+10;
typedef long long ll;

ll f[T+10][T+10],c[N<<1][N<<1],n,x,y,t,a,b;


int main(){
	//ios::sync_with_stdio(false);
	f[0][0]=1;
	for(int t=1;t<T;t++){
		f[t][0]=1;
		for(int i=1;i<=t;i++){
			f[t][i]=(f[t-1][i-1]+f[t-1][i])%mod;
		}
	}
	for(int i=0;i<N<<1;i++){
		c[i][0]=c[i][i]=1;
		for(int j=1;j<i;j++){
			c[i][j]=(c[i-1][j]+c[i-1][j-1])%mod;
		}
	}

	for(scanf("%d",&n);n--;){
		scanf("%d%d%d",&x,&y,&t);
		if(x+y>t) puts("0");
		else{
			b=x+y;
			a=x;
			printf("%lld\n",c[b][a]*f[t][b]%mod);
		}
	}
}

是不是好简单,之前用C(n,m)=n!/m!(m-n)!+逆元算gg了,后面看别人直接打表杨辉三角算了下才1e6,
全部评论
这个强啊,不好想啊!!!!
点赞 回复 分享
发布于 2020-04-25 09:58

相关推荐

运营3年修炼中接简历辅导:你的科研项目经历里,只写了你的动作,没有写你的思考和成果,不要只写使用什么进行了什么,这等于罗列你的任务,简历是为了突出你的优秀,你在什么样的任务背景下,克服了什么样的困难,针对性地做了哪些事情,最后达成了什么成果(用数据体现你的成果和效率)
点赞 评论 收藏
分享
04-10 11:56
如皋中学 Java
高斯林的信徒:双c9能简历挂的?
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务