合根植物 藍橋杯(並查集)
http://lx.lanqiao.cn/problem.page?gpid=T458
#include<iostream> #define maxn 1000010 using namespace std; int pre[maxn]; int n,m,k,cnt; int find(int x){ int temp=x; while(temp!=pre[temp]){ temp=pre[temp]; } int t; while(temp!=x){ t=pre[x]; pre[x]=temp; x=t; } return temp; } int join(int a,int b){ int aa=find(a); int bb=find(b); if(aa!=bb){ pre[bb]=pre[aa]; cnt--; } } int main(){ cin>>n>>m; cnt=n*m; for(int i=0;i<=n*m;i++){ pre[i]=i; } cin>>k; for(int i=0;i<k;i++){ int a,b; cin>>a>>b; join(a,b); } cout<<cnt<<endl; return 0; }
相關推薦
合根植物 藍橋杯(並查集)
http://lx.lanqiao.cn/problem.page?gpid=T458 #include<iostream> #define maxn 1000010 using namespace std; int pre[maxn]; int n,m,k,cnt; int fin
藍橋杯—合根植物(並查集)
問題描述 w星球的一個種植園,被分成 m * n 個小格子(東西方向m行,南北方向n列)。每個格子裡種了一株合根植物。 這種植物有個特點,它的根可能會沿著南北或東西方向伸展,從而與另一個格子的植物合成為一體。 如果我們告訴你哪些小格子間出現了連根現象,你能說出這個園中一共有多少株合根
2019藍橋杯JAVA練習 合根植物(並查集+路徑壓縮)
問題描述 w星球的一個種植園,被分成 m * n 個小格子(東西方向m行,南北方向n列)。每個格子裡種了一株合根植物。 這種植物有個特點,它的根可能會沿著南北或東西方向伸展,從而與另一個格子的植物合成為一體。 如果我們告訴你哪些小格子間出現了連根現象,你能說出這個園中一
藍橋杯 國王的煩惱 (並查集)
問題描述 C國由n個小島組成,為了方便小島之間聯絡,C國在小島間建立了m座大橋,每座大橋連線兩座小島。兩個小島間可能存在多座橋連線。然而,由於海水沖刷,有一些大橋面臨著不能使用的危險。
[2017年第0屆浙江工業大學之江學院程序設計競賽決賽 I] qwb VS 去汙棒(並查集,按秩合並,最小生成樹,LCA)
之間 i++ ont 題意 倍增 題目 while 並查集 工業 題目鏈接:http://115.231.222.240:8081/JudgeOnline/problem.php?cid=1005&pid=8 題意:中文題面。 手動畫一下會發現所求邊必然存在於最大生
Conquer a New Region(並查集加維護根節點)
The wheel of the history rolling forward, our king conquered a new region in a distant continent. There are N towns (numbered from 1 to N) in this r
[BZOJ 3211]花神遊歷各國(並查集+樹狀數組)
image fin 不為 names src scrip 樹狀數組 add bsp Description Solution 樹狀數組單點修改區間查詢 我們知道一個數n最多修改loglogn次就會變為1 並查集維護每個數右邊第一個不為1的位置 #inclu
51Nod 1515(並查集、set、離散化)
() space 並查集 conn com i++ include int esp //代碼還是YY學姐幫改的,自己從來沒有真正A過幾道題,不是看題解就是有BUG找不出,多久了還是改變不了這樣的現狀,或許ACM就是這麽篩選人的吧。從5.24到11.24,再到又一年的5.24
(並查集)Codeforces 325 D-Reclamation
name clam .cn 每次 .html con ret ring true 借用 鏈接 的題意和解法分析的圖片。 對於這種環的形式,先用常用的手段復制一份在右邊。每次加點的過程只要看加完之後能不能通過已有的格子聯通,如果聯通則顯然已經形成了一個環。這裏判斷聯通我
HDU 1198 Farm Irrigation (並查集優化,構圖)
++ space int con can 組成 union trac 輸入 本題和HDU暢通project類似。僅僅只是暢通project給出了數的連通關系, 而此題須要自己推斷連通關系,即兩個水管能否夠連接到一起,也是本題的難點所在。 記錄狀態。不斷combine()
uvalive 4730王國kingdom(並查集+線段樹)
[0 ++ char == tac sum data 操作 input ?? 題意:有T組測試數據。每組數據的N表示有N個城市,接下來的N行裏每行給出每一個城市的坐標(0<=x,y<=1000000),然後有M(1<M<200000)個操作,操作
(並查集狀態壓縮)CodeForces - 469D Two Sets
queue == 劃分 查詢 sample 在那 des elong equal Little X has n distinct integers: p1,?p2,?...,?pn. He wants to divide all of them into two sets
[luoguP2342] 疊積木(並查集)
() click hide open closed include tps 技術 char 傳送門 up[i] 表示一個木塊上面有多少個 all[i] 表示整個連通塊內有多少個 那麽 一個木塊下面的木塊個數為 all[root[i]] - up[i] - 1
hdu5652:India and China Origins(並查集)
and std map printf etc scanf 16px 兩個 for 倒序操作用並查集判斷是否連通,新技能get√(其實以前就會了 這題細節很多。。。搞得整個程序都是調試輸出,幾度看不下去想要重寫 並查集到現在大概掌握了兩個基本用途:判斷是否連通 /
POJ 1988 Cube Stacking(並查集+路徑壓縮)
trac ref nio space == using n) scan 累加 題目鏈接:id=1988">POJ 1988 Cube Stacking 並查集的題目 【題目大意】 有n個元素,開始每一個元素自己 一棧。有兩種操作,將含有元素
HDU 1198 Farm Irrigation(並查集+位運算)
another org des clas accepted som using red wan Farm Irrigation Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java
POJ 2492 A Bug's Life (並查集)
ont set -1 flat com rom init red least Background Professor Hopper is researching the sexual behavior of a rare species of bugs. He assum
LA 3027 Corporative Network(並查集)
using namespace while += fin clas 都是 ont roo 有n個點,一開始都是孤立的,然後有I,E兩種操作 I u v,把u的父節點設為v,距離為abs(u-v) % 1000,保證u之前沒有父節點 E 詢問u到根節點
HDU 1232 暢通工程 (並查集)
while name style queue input 結束 inf long 城市 某省調查城鎮交通狀況,得到現有城鎮道路統計表,表中列出了每條道路直接連通的城鎮。省政府“暢通工程”的目標是使全省任何兩個城鎮間都可以實現交通(但不一定有直接的道路
uva live 7638 Number of Connected Components (並查集)
txt 通過 open main eps div cte efi ive 題目鏈接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_