zoukankan      html  css  js  c++  java
  • [JSOI2011]分特产

    Solution

    如果没有每个人都必须分到特产的限制的话,考虑对每个物品用插板法,表示一种物品的分配方法,每个物品的方案数乘起来就是总的方案,即

    [prod_{i=1}^m inom{a_i+n-1}{n-1} ]

    (G(x)) 表示恰好有 (x) 个人没有领到特产的方案数,容易知道答案是 (G(0))。令 (F(x)) 表示强制令其中 (x) 个人不选,所有物品在剩下的 (n-x) 个人中分配的可重方案数,容易知道有

    [F(k)=inom{n}{k}prod_{j=1}^m inom{a_j+n-k-1}{n-k-1} ]

    又,对于 (F(k)) 中的一种特定方案,如果其有 (i) 个人没有领到特产,容易知道这种方案在 (F(k)) 中被计数了 (inom{i}{k}) 次,那么

    [F(k)=sum_{i=k} inom{i}{k} G(i) ]

    所以由二项式反演可得

    [G(k)=sum_{i=k}^n (-1)^{i-k} F(i) ]

    代入 (F(i)) ,得

    [G(k)=sum_{i=k}^n (-1)^{i-k} inom{n}{i} prod_{j=1}^m inom{a_j+n-i-1}{n-i-1} ]

    所以最后答案就是

    [G(0)=sum_{i=0}^n (-1)^{i} inom{n}{i} prod_{j=1}^m inom{a_j+n-i-1}{n-i-1} ]

    对二项式系数预处理,那么剩下的式子 (O(n^2)) 求解即可。

  • 相关阅读:
    java项目中文件含义
    关于反射技术
    Subversion Edge部署
    svn Edge访问规则配置
    redhat开启端口
    关于Ant脚本
    Maven
    版本控制工具
    Oracle了解(一)
    java 空格替换%20
  • 原文地址:https://www.cnblogs.com/wwlwQWQ/p/14268882.html
Copyright © 2011-2022 走看看