病毒扩散
鏈接:
時間限制:C/C++ 2秒,其他語言4秒 空間限制:C/C++ 262144K,其他語言524288K 64bit IO Format: %lld題目描述
出發,每次可以走一步,或者原地不動,問t時刻走到(x,y)的方案數量
想想這個怎么做?不會
因為一次最多走一步,所以到(x,y)至少要走x+y個時刻,
我們設sum=x+y,sum一定要大于t否則怎么能走到,要在t時刻內走到,就是在t內選sum個時刻,共有Ctsum
在移動的sum個步數里,有x步需要x坐標加一,其余要將y坐標加一,一共有Cxsum
綜上,乘在一起就可以
還一個想法:一共t時刻,其中選出x個用于x坐標加一,剩下t-x中選出y個用于y坐標加一,剩下的原地不動
這樣就是Cxt*Cyt-x
求組合數時,
乘法逆元:(a/b)% mod = a * b^(mod-2),mod為素數
代碼:
我看還有一個是找規律,用楊輝三角形做的,tql
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
- 上一篇: 炉石传说盗贼(潜行者)卡牌组合技巧与攻略
- 下一篇: Steam Deck 掌机最高降价 20