hdu 5481 數學期望 區間合併

2021-07-15 06:23:07 字數 731 閱讀 9344

題解:

實際上求的是所有子集的並集長度之和。

把座標離散化之後,可以單獨考慮每一段區間在並集內部的出現次數,如果有m個大區間覆蓋這段小區間,就會發現當且僅當這m個區間都不在子集中時,這一小段區間不會成為並集的一部分,所以一共有2n

−2n−

m 個子集包含這段小區間。把長度乘以出現次數即可。

總結:1、出現區間計數或者區間並的時候,如果簡單的話可以直接求;

2、如果題目複雜, 可以先算出每一段小區間的貢獻,再累加。

#include#include#include#includeusing namespace std;

typedef long long ll;

const int maxn = 100005;

const int mod = 1e9+7;

struct segment

seg[maxn<<1];

int n,tot;

ll p[maxn];

bool cmp(segment a,segment b)

int main()

sort(seg,seg+tot,cmp);

int cnt = 0;

ll ans = 0;

for(int i = 0; i < tot; i++)

printf("%lld\n",ans);

} return 0;

}

hdu 5481 區間離散 組合

第二個樣例解釋 集合中含有2個區間 乙個是 0,2 編號為1,乙個是 1,3 編號為2。集合的子集有4個 1 空集,集合中區間的並的長度為0 2 集合中區間的並的長度為2 3 集合中區間的並的長度為2 4 集合中區間的並為 0,3 長度為3 考慮某乙個區間對於答案的貢獻 若某個區間沒有被其它區間覆蓋...

hdu5984 Pocky(猜數學期望公式)

題目大意 對於一根長度為l的木棍,每次等概率的取乙個點將其分成兩半,然後吃掉左邊一半,直到剩下的長度小於d,計算需要吃 分割 次數的數學期望 題目思路 顯然,如果l d相同,則結果必定相同 根據ln2 0.693147可以推測出結果應該是ln l d 1 再單獨考慮不需要分割的情況 d l 居然還可...

hdu5984 數學期望(詳細具體推理)

題目大意 給定一根長度為l的木棒,每次等概率的取乙個點將其分成兩段,然後吃掉左邊的,如此重複直到剩下的長度小於d,求分割次數的期望 設f x 為長度為x的木棒的期望。1 當x d時,已經不用分割了,故期望f x 0 2 當x d時,f x 1 f 0 d f d x 1 表示在長度為x的木棒上分割一...