bzoj1529 [POI2005]ska Piggy banks(并查集)

来源:互联网 发布:智程网络 编辑:程序博客网 时间:2024/06/05 11:11

水题一道。

#include<cstdio>#include<cstring>int n,ans=0,fa[1000001];inline int find(int x){return x==fa[x]?x:fa[x]=find(fa[x]);}int main(){    scanf("%d",&n);    for(int i=1;i<=n;++i) fa[i]=i;    for(int i=1;i<=n;++i){        int y;scanf("%d",&y);        int xx=find(i),yy=find(y);        if(xx!=yy) fa[xx]=yy;    }    for(int i=1;i<=n;++i) if(fa[i]==i) ans++;    printf("%d",ans);    return 0;}
原创粉丝点击