1 #include<iostream>
 2 #include<cstdio>
 3 #include<cmath>
 4 #include<cstring>
 5 #include<string>
 6 #include<algorithm>
 7 #include<queue>
 8 #include<vector>
 9 
10 using namespace std;
11 typedef long long ll;
12 const int maxn=3002;
13 int fa[maxn];
14 int sum[maxn];
15 int n,m;
16 void init()
17 {
18     for(int i=1;i<=n;i++)
19     {
20         fa[i]=i;
21     }
22 }
23 
24 int find(int x)
25 {
26     return x==fa[x]?x:fa[x]=find(fa[x]);
27 }
28 int main()
29 {
30     while(~scanf("%d%d",&n,&m))
31     {
32         init();
33         int u,v,w;
34         memset(sum,0,sizeof(sum));
35         int cnt=n-1;
36         while(m--)
37         {
38             scanf("%d%d%d",&u,&v,&w);
39             int fu=find(u);
40             int fv=find(v);
41             if(fu!=fv)
42             {
43                 fa[fu]=fv;
44                 cnt--;
45             }
46         }
47         if(cnt==0)
48         {
49             puts("yes");
50         }
51         else
52         {
53             puts("no");
54         }
55     }
56     return 0;
57 }
方法一

相关文章: