知識點簡單總結 minmax容斥

2022-05-09 19:46:34 字數 1430 閱讀 2230

好像也有個叫法叫最值反演?

就是這樣的乙個柿子:

\[max(s) = \sum\limits_ min(t) \times (-1)^

\]用 $ max $ 來求 $ min $ 也一樣可行。

證明不太難,所以乾脆咕了,隨便找個證明。

由於期望的線性性,以上公式對於每個元素的期望也是成立的,

可以寫作 $ e( max(s) ) = \sum\limits_ e( min(t) ) $ 。

這個是比較有用的,因為很明顯 $ e( max(s) ) \ne max( e(s) ) $ ,這個是不容易輕易用正常方法求出的。

[haoi2015]按位或

要求求出 $ e( max(u) ) $ 。

很明顯求不出來所以考慮改求 $ e( min(s) ) $ 。

考慮有 $ p( min(t) == k ) = p( s \oplus u ) ^ ( 1 - p( s \oplus u ) ) $ 。

幾何分布,很容易得出 $ e( min(s) ) = \frac $ ,其中 $ p'(s) = \sum\limits_ p(t) $ 。

$ fwt $ 變換一下即可出解,注意特判 $ \le eps $ 。

[pkuwc2018]隨機遊走

依然改求 $ e( min(s) ) $ 。

也就是求經過某個集合中至少乙個點時的期望步數。

設 $ f_ $ 為從 $ x $ 出發,到達 $ s $ 中某個點時的期望步數,很明顯 $ e( min(s) ) = f_ $ 。

\[f_ = \frac } + \sum\limits_ } f_ } } + 1

\]為了分離父親對其貢獻,考慮轉化成 $ f_ = a_ * f_ } +b_ $ 。

解完之後發現與父親的值無關,可以直接樹形dp。

然後直接minmax容斥就完事了。

\[\max\limits_(s) = \sum\limits_ min(t) \times (-1)^ \times \binom

\]$ \max\limits_(s) $ 表示第 $ k $ 大。

證明需要用到二項式定理,也咕了。

依然對期望成立。

重返現世

注意到 $ |n-k| \le 10 $ 。

很明顯答案要求 $ e(\min\limits_(u)) $ ,等效於 $ e(\max\limits_(u)) $ 。

那麼求 $ e(min(s)) $ 就好。

問題來了。

$ n \le 1000 $ ,不能直接做。

但是 $ m \le 10000 $ ,可以從這裡下手設計dp。

然後再往下的我不會了。

很明顯 $ e(min(s)) = \frac p_ } $ 。

考慮用dp統計對於每個 $ \sum\limits_ p_ $ 的值的係數和。

具體的dp設計它咕了。

總結 Min Max容斥學習筆記

給定集合 s 設 max s 為 s 中的最大值,min s 為 s 中的最小值,則 max s sum 1 min t 這個東西叫 min max容斥。證明可以拿二項式反演證 題目有 n 種卡片,每一秒都有 p i 的概率獲得一張第 i 種卡片,求每張卡片都至少有一張的期望時間。記 max s 為...

反射簡單知識點總結

三個方面的內容 第一點 利用反射獲取物件的方式 1 類名.class 2 通過物件getclass方法獲取 3 通過類的靜態方法forname 4 通過classloader物件的loadclass方法 第二點 利用反射獲得類的成員變數 成員方法 1 獲得構造方法 返回乙個具體的具有public屬性...

HttpSession知識點簡單總結

session物件的作用是為了區分不同的瀏覽器 使用不同的瀏覽器執行servlet服務,每個瀏覽器有且只有乙個httpsession物件 httpsession只有在服務端呼叫了getsession 方法才會被例項化物件,如果是在jsp 中沒有使用 page session false 關閉sess...