/**
[MST] poj 1679 判断一个图中的MST是否唯一。
先生成一颗MST,然后依次删除用过的且有多个相同权值的边重新建树,判断两棵树是否相等。
边的信息除u v c,还需要used(第一次建树使用的边) del(是否被删除) equal(是否有等边)
*/
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
#define N 124
#define M 10001
struct _edge{
int u,v,c;
bool used,del,equal;
void input(){
scanf("%d%d%d",&u,&v,&c);
used = del = equal = 0;
}
}E[M];
bool cmp(_edge a,_edge b){
return a.c < b.c;
}
int f[N],r[N];
int first,n,m;
int getF(int x){
return x == f[x] ? x : getF(f[x]);
}
int Union(int x,int y){
x = getF(x);
y = getF(y);
if(x == y)
return 0;
if(r[x] > r[y])
f[y] = x;
else{
f[