题解 luogu P1551 【亲戚】

蒟蒻并查集首题!!

其实就是道模板题,昨晚就可以去水模板了。

下面是代码

// luogu-judger-enable-o2  O2部分,不管
#include
using namespace std;
int bcj[5010]; 
int gets(int x)
{
    if (bcj[x]==x)return x;
    return bcj[x]=gets(bcj[x]);//查询标准代码
}
void merge(int x,int y)
{
	bcj[gets(x)]=gets(y);//合并标准代码
}
int main()
{
    int i,j,x,y,n,p,m;
    cin>>x>>y>>p;
    for (i=1;i<=x;i++)bcj[i]=i;
    for (i=1;i<=y;i++)
    {
        cin>>n>>m;
        merge(n,m);
    }//合并亲戚
    for (i=1;i<=p;i++)
    {
       cin>>n>>m;
       if (gets(n)==gets(m))cout<<"Yes";
       else cout<<"No";
       cout<

并查集小水题

你可能感兴趣的:(题解 luogu P1551 【亲戚】)