zoukankan      html  css  js  c++  java
  • min-max容斥

    (max(S))为集合S中的最大值,(min(S))为集合S中的最小值,可得

    [max(S)=sum_{Tsubseteq S}(-1)^{| T|+1}min(T) ]

    [min(S)=sum_{Tsubseteq S}(-1)^{|T|+1}max(T) ]

    使用时要保证集合元素两两互异,若有相同元素,处理时进行微小扰动即可

    对第一个等式进行分析,考虑一个元素(x),其在集合(S)中的排名为(k),那么对于一个(S)的子集(T),使得(min(T)=x)(T)的个数有(2^{|S|-k})个,其中大小为偶数的有(2^{|S|-k-1})个,大小为奇数的有(2^{|S|-k-1})个,刚好相互抵消

    只有当这个元素(x)的排名为(|S|)时,也就是(S)集合中的最大值时,其不会被抵消

  • 相关阅读:
    leetcode931
    leetcode1289
    leetcode1286
    poj Meteor Shower
    noip杂题题解
    noip2007部分题
    NOIP Mayan游戏
    某模拟题题解
    codevs 1423 骑士
    noip 邮票面值设计
  • 原文地址:https://www.cnblogs.com/lhm-/p/12544590.html
Copyright © 2011-2022 走看看