洛谷P1892 團夥

2021-08-15 07:12:32 字數 626 閱讀 9303

此題本人在洛谷上也著有題解,想看的朋友也可以去看->鏈結

假設敵人的敵人是朋友,朋友的朋友也是朋友。規定為朋友的兩個強盜為同一團夥,現給定n個強盜的m對關係(2<=n<=1000,1<=m<=5000)求共有幾個團夥?

利用並查集,只需要普通的查詢合併操作就行了,沒有什麼難點。最後在掃瞄所有人,如果祖先是自己,那麼就是乙個團夥。

#include

#define r(i,a,b) for(int i=a;i<=b;i++)

using

namespace

std;

int f[2002],n,m,a,b,ans;char c;

bool tong[1001];

struct bcj

int find(int x)//查詢

void judge(int a,int b)//合併

bool too(int a,int b)//判斷兩個元素是否在同一集合

}acs;

int main()

else

acs.judge(a,b);//合併

}r(i,1,n)

//求一共有幾種

cout

<}

洛谷 P1892 團夥

洛谷 p1892 團夥 1920年的芝加哥,出現了一群強盜。如果兩個強盜遇上了,那麼他們要麼是朋友,要麼是敵人。而且有一點是肯定的,就是 我朋友的朋友是我的朋友 我敵人的敵人也是我的朋友。兩個強盜是同一團夥的條件是當且僅當他們是朋友。現在給你一些關於強盜們的資訊,問你最多有多少個強盜團夥。輸入格式 ...

洛谷1892 團夥

題目描述 1920年的芝加哥,出現了一群強盜。如果兩個強盜遇上了,那麼他們要麼是朋友,要麼是敵人。而且有一點是肯定的,就是 我朋友的朋友是我的朋友 我敵人的敵人也是我的朋友。兩個強盜是同一團夥的條件是當且僅當他們是朋友。現在給你一些關於強盜們的資訊,問你最多有多少個強盜團夥。輸入輸出格式 輸入格式 ...

團夥 洛谷P1892

題目描述 1920年的芝加哥,出現了一群強盜。如果兩個強盜遇上了,那麼他們要麼是朋友,要麼是敵人。而且有一點是肯定的,就是 我朋友的朋友是我的朋友 我敵人的敵人也是我的朋友。兩個強盜是同一團夥的條件是當且僅當他們是朋友。現在給你一些關於強盜們的資訊,問你最多有多少個強盜團夥。輸入輸出格式 輸入格式 ...