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 礼物的主要内容,如果未能解决你的问题,请参考以下文章

BZOJ#2142. 礼物

bzoj2142 礼物

bzoj 2142: 礼物

bzoj2142 礼物

[BZOJ2142]礼物(扩展Lucas)

@bzoj - 2142@ 礼物