CF11841E1 & blog
盡然想讓第一條邊最大且這條邊在最小生成樹中,那麼這條邊就需要儘量晚。
但是假如加上一條邊 \(i\) 可以使 \(u_1\) 和 \(v_1\) 聯通並且第 \(w_i \le w_1\) 那麼我們就會捨棄原本第一條邊,使用第 \(i\) 條邊。
所以第一條邊的比安全一定小於等於所有麼滿足上述條件的邊的邊長。
所以先跑 \(\text{Kruskal}\),然後假如有一條邊滿足上述情況就輸出那條邊的邊長。注意:第一條邊不排序。
code
CF11841E1 & blog
盡然想讓第一條邊最大且這條邊在最小生成樹中,那麼這條邊就需要儘量晚。
但是假如加上一條邊 \(i\) 可以使 \(u_1\) 和 \(v_1\) 聯通並且第 \(w_i \le w_1\) 那麼我們就會捨棄原本第一條邊,使用第 \(i\) 條邊。
所以第一條邊的比安全一定小於等於所有麼滿足上述條件的邊的邊長。
所以先跑 \(\text{Kruskal}\),然後假如有一條邊滿足上述情況就輸出那條邊的邊長。注意:第一條邊不排序。
code