hdu5036 Explosion 傳遞閉包

2022-05-17 17:05:59 字數 636 閱讀 4093

大哲哥的講課內容

根據期望的線性性,得到總期望為各個點被轟的概率(不會證,好像是這樣吧)

傳遞閉包解決出每個點的祖先(能到達它的點)就能算概率了

bitset能貢獻1/w的複雜度,而且導致floyd只剩下兩個for了(一點都不像經典floyd)

1 #include 2

using

namespace

std;

3int

t,n,m,t;

4 bitset<1001> a[1001];5

intmain()619

for(int i=1;i<=n;i++)

20for(int j=1;j<=n;j++)

21if

(a[j][i])

22 a[j]|=a[i];

23double ans=0;24

for(int i=1;i<=n;i++)

25 ans+=1.0/a[i].count();

26 printf("

case #%d: %.5f\n

",cas,ans);27}

28return0;

29 }

HDU 5036 Explosion 概率 期望

題意 給出n個箱子。每個箱子上都有鎖。一把鑰匙只能開一把鎖,一把鎖只有乙個鑰匙。當然,對於有些沒法用鑰匙開的箱子,我們必須暴力開啟。給出每個箱子中鑰匙的數目和具體能開那個箱子,求暴力開箱子的數目的期望,使所有的箱子被開啟。思路 很像xiaodaobc的某道開箱子的題。但是因為那道題是每個箱子會隨機的...

HDU 5036 Explosion 概率 期望

題意 給出n個箱子。每個箱子上都有鎖。一把鑰匙只能開一把鎖,一把鎖只有乙個鑰匙。當然,對於有些沒法用鑰匙開的箱子,我們必須暴力開啟。給出每個箱子中鑰匙的數目和具體能開那個箱子,求暴力開箱子的數目的期望,使所有的箱子被開啟。思路 很像xiaodaobc的某道開箱子的題。但是因為那道題是每個箱子會隨機的...

5036 尋找最大質因數(資料加強版)

時間限制 1 s 空間限制 128000 kb 題目等級 gold 題解給出n個數字,試求質因數最大的數字。輸入描述 input description 第一行,乙個整數n,表示數字個數。接下來n行,每行乙個整數ai,表示給出的數字。輸出描述 output description 乙個整數,表示質因...