Codeforces698B【并查集+拆环】
生活随笔
收集整理的這篇文章主要介紹了
Codeforces698B【并查集+拆环】
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
好題,好題,第一次寫這個神秘的拆環。。
題意:
給你n個數,第i個數代表點i連向點a[i],
將這副圖變成樹,求最小改變邊的數量;
思路:
已知有向樹的定義,
除了根節點外每個節點都有且僅有一條邊都指向它的父親節點,
而根節點有且僅有一條邊指向自己。
給出的圖類型,
1.環;
2.獨立的點;
3.鏈;
如果是獨立的話,就是選定一個根節點然后,讓其他根節點指向它;
如果存在環的話,那么就是拆掉,選一個根結點。
//存在自己指向自己,也就是根,如果存在自己指向自己就可以讓樹的根設為其中一個。
//拆環具體操作,找鏈,標記,最后判斷break出來的節點是否也是cnt
轉載于:https://www.cnblogs.com/keyboarder-zsq/p/5934757.html
總結
以上是生活随笔為你收集整理的Codeforces698B【并查集+拆环】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 重温数据结构:树 及 Java 实现(转
- 下一篇: easyui numberbox一些常用