病毒扩散
鏈接:
時(shí)間限制:C/C++ 2秒,其他語言4秒 空間限制:C/C++ 262144K,其他語言524288K 64bit IO Format: %lld題目描述
點(diǎn),在時(shí)刻\ t t 感染者的數(shù)量。
輸入描述:
輸出描述:
對于每一個(gè)特殊的點(diǎn),輸出一行一個(gè)非負(fù)整數(shù),表示在 \ t t 時(shí)刻這個(gè)點(diǎn)的感染者數(shù)量,對 998244353 取模。
示例1
輸入
復(fù)制
3
0 0 1
1 1 2
2 0 2
輸出
復(fù)制
1
2
1
說明
見題目描述中的圖片。
示例2
輸入
復(fù)制
5
5 5 7
2 7 9
0 14 14
0 14 15
14 29 100
輸出
復(fù)制
0
36
1
15
891148910
備注:
題解:
我們可以轉(zhuǎn)化下題意:
從(0,0)出發(fā),每次可以走一步,或者原地不動(dòng),問t時(shí)刻走到(x,y)的方案數(shù)量
想想這個(gè)怎么做?不會(huì)
因?yàn)橐淮巫疃嘧咭徊?#xff0c;所以到(x,y)至少要走x+y個(gè)時(shí)刻,
我們設(shè)sum=x+y,sum一定要大于t否則怎么能走到,要在t時(shí)刻內(nèi)走到,就是在t內(nèi)選sum個(gè)時(shí)刻,共有Ctsum
在移動(dòng)的sum個(gè)步數(shù)里,有x步需要x坐標(biāo)加一,其余要將y坐標(biāo)加一,一共有Cxsum
綜上,乘在一起就可以
還一個(gè)想法:一共t時(shí)刻,其中選出x個(gè)用于x坐標(biāo)加一,剩下t-x中選出y個(gè)用于y坐標(biāo)加一,剩下的原地不動(dòng)
這樣就是Cxt*Cyt-x
求組合數(shù)時(shí),
乘法逆元:(a/b)% mod = a * b^(mod-2),mod為素?cái)?shù)
代碼:
我看還有一個(gè)是找規(guī)律,用楊輝三角形做的,tql
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
- 上一篇: 炉石传说盗贼(潜行者)卡牌组合技巧与攻略
- 下一篇: 【每日一题】4月27日题目精讲 Remo