BZOJ2142 礼物
Posted ONION_CYC
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BZOJ2142 礼物相关的知识,希望对你有一定的参考价值。
【算法】中国剩余定理+组合数取模(lucas)
【题意】给定n件物品分给m个人,每人分到wi件,求方案数%p。p不一定是素数。
【题解】
首先考虑n全排列然后按wi划分成m份,然后对于每份内都是全排列,除以wi!消除标号影响,注意剩余的(n-W)也视为一份。
所以ans=n!/(w1!w2!...wm!(n-W)!)%p
也可以从排列组合公式方面考虑,即
ans=C(n,w1)*C(n-w1,w2)*C(n-w1-w2,w3)*...*C(n-w1-w2-...-w_(m-1),wm) mod P
=n!/w1!/w2!/.../wm! mod P (by POPOQQQ)
为了出p倍数
以上是关于BZOJ2142 礼物的主要内容,如果未能解决你的问题,请参考以下文章