CodeForces - 1325F Ehabs Last Theorem(dfs树找最大环)
生活随笔
收集整理的這篇文章主要介紹了
CodeForces - 1325F Ehabs Last Theorem(dfs树找最大环)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目鏈接:點擊查看
題目大意:給出一個由 n 個結(jié)點和 m 條邊構(gòu)成的無向圖,再給出一個 k ,需要在圖中完成下面任意一種操作:
題目分析:看了 dls 的視頻后感覺這個題目也就那回事,主要是 思路 + 證明 比較難想,有了結(jié)論后實現(xiàn)倒是非常簡單
首先證明一下一定有解:假設(shè)圖中存在一個長度大于等于??的環(huán),那么顯然滿足情況 2 ,直接輸出即可
如果圖中不存在長度大于等于??的環(huán),也就是說在 dfs 樹上的任意兩個點 x , y 如果距離大于等于??的話,?一定是沒有非樹邊相連的,這樣我們就可以在取獨立集時,每次都取相距恰好為??的點,換句話說,這些點的深度 deep 在對??取模后都是相同的,根據(jù)鴿巢原理,一共有??組,一共有 n 個點,n 個點分成??組,即下面的這個公式顯然成立,?,換句話說,肯定有一組中的個數(shù)是大于等于??的,也就滿足了第一種情況,證畢
證明結(jié)束后,我們就可以在dfs樹上找到最大環(huán),然后分類討論了
代碼:
?
?
總結(jié)
以上是生活随笔為你收集整理的CodeForces - 1325F Ehabs Last Theorem(dfs树找最大环)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CodeForces - 1364C E
- 下一篇: HDU - 5788 Level Up(