#include #include #include #include using namespace std; struct DisjoinSet{ std::vector father,rank,size; DisjoinSet(int n) : father(n),rank(n),size(n) { for(int i=0;i>T; while(T--) { cin>>n; DisjoinSet tmp=DisjoinSet(n); int num=n-1; while(num--) { scanf("%d%d%d",&a,&b,&flag); if(!flag) tmp.merge(a-1,b-1); } int ans=0; for(int i=0;i