HRBUST - 1073:並查集
#include<iostream> #include<cstdio> using namespace std; const int N=5e4+5; int P[N]; void init(int n){ for(int i=0;i<n;i++) { P[i]=i; } } int find(int x){ if(x!=P[x]) P[x]=find(P[x]); return P[x]; } void join(int x,int y){ int a=find(x); int b=find(y); if(a!=b)P[a]=b; } int n,m; int main(){ int u,v,num=0; ios::sync_with_stdio(false); while(cin>>n>>m){ init(n); for(int i=0;i<m;i++){ cin>>u>>v; join(u,v); } for(int i=0;i<n;i++) if(find(i)==find(0)) num++; cout<<num<<endl; } return 0; }
相關推薦
HRBUST - 1073:並查集
#include<iostream> #include<cstdio> using namespace std; const int N=5e4+5; int P[N]; void init(int n){ for(int i=0;i<n;i++) { P[i]
1073:並查集
#include<iostream> #include<cstdio> using namespace std; const int N=5e4+5; int P[N]; void init(int n){ for(int i=0;i<n;i+
codevs 1073 家族 並查集
並查集 define pan else == stdio.h 技術 log onclick 沒什麽可以說的,並查集裸題,標簽難度和實際不成正比啊,存個板子: 1 #include<stdio.h> 2 #include<string.h&
codevs 1073 家族 並查集 解題報告
題目描述 Description 若某個家族人員過於龐大,要判斷兩個是否是親戚,確實還很不容易,現在給出某個親戚關係圖,求任意給出的兩個人是否具有親戚關係。 規定:x和y是親戚,y和z是親戚,那麼x和z也是親戚。如果x,y是親戚,那麼x的親戚都是y的親戚,y的
poj 1182 (帶權並查集)
ios int 查找 食物 spa script ble 距離 輸出 食物鏈 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 71361 Accepted: 21131 Des
BZOJ 4569 [Scoi2016]萌萌噠 ——ST表 並查集
oid include long long amp else n) div 每一個 並查集 好題。 ST表又叫做稀疏表,這裏利用了他的性質。 顯然每一個條件可以分成n個條件,顯然過不了。 然後發現有許多狀態是重復的,首先考慮線段樹,沒什麽卵用。 然後ST表,可以每一層表示對
1013. Battle Over Cities (25)(連通分量個數 、 並查集)
mage conn pen view con input case scanf print It is vitally important to have all the cities connected by highways in a war. If a city is
HDU4126Genghis Khan the Conqueror(最小生成樹+並查集)
mini info struct waiting other desc dfa tle ngs Genghis Khan the Conqueror Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 327
hdoj-1856-More is better【並查集】
sub ont max ash cer careful gin search std More is better Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 327680/102400 K (Java/Ot
【bzoj1015】【JSOI2008】【星球大戰】【並查集+離線】
urn new span fin mar tdi mem 一次 esp Description 非常久曾經。在一個遙遠的星系,一個黑暗的帝國靠著它的超級武器統治者整個星系。某一天,憑著一個偶然的機遇,一支反抗軍摧毀了帝國的超級武器。並攻下了星系中差點兒全部的星球。這些
可持久化並查集加強版 BZOJ 3674
log 歷史 clear 必須 new 路徑壓縮 都是 return 父節點 http://www.lydsy.com/JudgeOnline/problem.php?id=3674 3674: 可持久化並查集加強版 Time Limit: 15 Sec Memory
poj 1703 Find them, Catch them(種類並查集和一種巧妙的方法)
ogr not 帶權並查集 drag single sca course first req Find them, Catch them Time Limit: 1000MS Memory Limit: 10000K Total Submissions
[BZOJ 3211]花神遊歷各國(並查集+樹狀數組)
image fin 不為 names src scrip 樹狀數組 add bsp Description Solution 樹狀數組單點修改區間查詢 我們知道一個數n最多修改loglogn次就會變為1 並查集維護每個數右邊第一個不為1的位置 #inclu
<算法><Union Find並查集>
添加 容易 fin 程序 zh-cn 過程 表現 應用場景 union Intro 想象這樣的應用場景:給定一些點,隨著程序輸入,不斷地添加點之間的連通關系(邊),整個圖的連通關系也在變化。這時候我們如何維護整個圖的連通性(即判斷任意兩個點之間的連通性)呢? 一個比較簡單
BZOJ 3674 可持久化並查集加強版(主席樹變形)
als ret desc scan sync scanf ops 只需要 ica 3673: 可持久化並查集 by zky Time Limit: 5 Sec Memory Limit: 128 MB Submit: 2515 Solved: 1107 [
[BZOJ 1455]羅馬遊戲(左偏樹+並查集)
node truct scrip logs wap find eap lib space Description 羅馬皇帝很喜歡玩殺人遊戲。 他的軍隊裏面有n個人,每個人都是一個獨立的團。最近舉行了一次平面幾何測試,每個人都得到了一個分數。 皇帝很喜歡平面幾何,他對那些得
HDU1863_暢通project【Prim】【並查集】
計數 道路 不足 rim scanf article ava 能夠 else 暢通project Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Ja
並查集 洛谷P1640 [SCOI2010]連續攻擊遊戲
return main blog scoi2010 clu amp std 來源 多少 [SCOI2010]連續攻擊遊戲 題目描述 lxhgww最近迷上了一款遊戲,在遊戲裏,他擁有很多的裝備,每種裝備都有2個屬性,這些屬性的值用[1,10000]之間的數表示。當他使用某種裝
poj 2492 a bug's life 簡單種類並查集
ont nbsp root 遞推 spl bsp n) void display 題意大致為找同性戀的蟲子。。。。 這個比食物鏈要簡單些。思路完全一致,利用取余操作實現關系之間的遞推。 個人感覺利用向量,模和投影可能可以實現具有更加復雜關系的並查集。 1 #inclu
51Nod 1515(並查集、set、離散化)
() space 並查集 conn com i++ include int esp //代碼還是YY學姐幫改的,自己從來沒有真正A過幾道題,不是看題解就是有BUG找不出,多久了還是改變不了這樣的現狀,或許ACM就是這麽篩選人的吧。從5.24到11.24,再到又一年的5.24