RE + WA……

P2078 朋友

@[beautiful_chicken233](/user/814343) AC代码: ```cpp #include<iostream> #include<algorithm> using namespace std; const int N=1e4+10; int fa[N],n,m,p,q,ans=1e6,cnt; // 初始化并查集 void init(int n) { for (int i = 1; i <= n; i++) fa[i] = i; } // 查找x所在的集合 + 路径压缩 int find_Set(int x) { if (fa[x] != x) fa[x]=find_Set(fa[x]); return fa[x]; } // 合并x和y所在的集合,并且把他们的父节点赋值为小的那个 void merge(int x, int y){ int fx = find_Set(x); int fy = find_Set(y); if (fx < fy) fa[fy] = fx; else fa[fx] = fy; } int main(){ scanf("%d%d%d%d",&n,&m,&p,&q); int a,b; init(n); while(p--) scanf("%d%d",&a,&b),merge(a,b); for(int i=1;i<=n;i++) if(find_Set(i)==1) cnt++; ans=min(ans,cnt); cnt=0; init(m); while(q--) scanf("%d%d",&a,&b),merge(-a,-b); for(int i=1;i<=m;i++) if(find_Set(i)==1) cnt++; ans=min(ans,cnt); printf("%d\n",ans); return 0; } ```
by uberking @ 2023-04-23 16:42:16


|