1 条题解
-
0
C++ :
#include <iostream> #include <cstdio> #include <cstdlib> using namespace std; int t,n,parent[11000],ans,a,b; int root(int k) { if (parent[k] == k) return k; else return parent[k] = root(parent[k]); } void merge(int a,int b) { parent[root(a)] = root(b); } int main() { //freopen("in.txt","r",stdin); //freopen("out.txt","w",stdout); scanf("%d",&t); while (t--) { scanf("%d",&n); ans = 0; for (int i = 1 ; i <= 10000 ; i ++) parent[i] = i; for (int i = 1; i <= n ; i ++) { scanf("%d%d",&a,&b); if (root(a) != root(b)) merge(root(a),root(b)); else ans ++; } printf("%d\n",ans); } return 0; }
- 1
信息
- ID
- 2036
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者