CF競賽題目講解_CF1783D(散列式DP + 滾動數(shù)組)
2023-01-16 10:06 作者:Clayton_Zhou | 我要投稿
AC代碼
?https://codeforces.com/contest/1783/submission/189273868
題意:
給您一個由n個整數(shù)組成的數(shù)組a。
您必須在此數(shù)組上依次執(zhí)行n?2個操作:
1.在第一次操作中,將a2加到a1上,然后從a3減去a2,
或者將a2加到a3上并從a1中減去a2;
2.在第二次操作中,將a3加到a2上,然后從a4減去a3
或者將a3與a4相加并從a2減去a3;
...
在最后一次操作中,您可以將a_{n?1}添加到a_{n?2}
并從a_{n}中減去a_{n?1},或?qū)_{n?1}添加到a_{n}中并從從a_{n?2}減去a_{n?1}.
因此,在第i次操作中,將a_{i+1}的值添加到它的一個鄰居,然后從另一個鄰居中減去它。
例如,如果您有數(shù)組[1,2,3,4,5],可能的操作序列之一是:
從a3中減去2并將其加到a1上,因此數(shù)組變?yōu)? [3,2,1,4,5];
從a2中減去1并將其添加到a4中,因此數(shù)組變?yōu)閇3,1,1,5,5];
從a3減去5并將其加到a5,這樣數(shù)組就變成[3,1,?4,5,10].
因此,得到的數(shù)組是[3,1,?4,5,10]。?
如果可以通過對a執(zhí)行上述操作序列獲得數(shù)組,則該數(shù)組是可達(dá)。
您必須計算可達(dá)數(shù)組的數(shù)量,并取模998244353的余數(shù)
?
題解:
散列式DP + 滾動數(shù)組
標(biāo)簽: