作者:
sixB (6B)
2025-05-10 03:38:503343.
怎麼又是大數字乘法mod
分左右擺數字和要一樣大
先check sum even
然後有限個數背包
size: n/2, (n+1)/2
volumn: sum/2
dp算有幾組
同時每一組重複數字的個數也要記起來
比如說111122
dup[4]++, dup[2]++
res = dp[volume][size] * fact[n/2] * fact[(n+1)/2]
然後for i, cnt: enumerate(dup)
res *= fact_inv[i] do cnt times
有乘就記得mod
fact 跟 inv 要先算好 到 n/2
想完了 好懶得寫== 看解答也差不多是這樣 明天再