#include #include #include #include using namespace std; int n,m,sum[3005]; struct bin { int fa[3005]; void clear() { for(int i=0;i<3005;i++) fa[i]=i; return ; } int find(int x){return fa[x]==x?x:fa[x]=find(fa[x]);} bool query(int x,int y){return find(x)==find(y);} void merge(int x,int y){fa[find(x)]=find(y);return ;} }b; int main() { while(scanf("%d%d",&n,&m)!=EOF) { b.clear(); memset(sum,0,sizeof(sum)); for(int i=1;i<=m;i++) { int u,v,w; scanf("%d%d%d",&u,&v,&w); if(u==v) continue; sum[u]+=w; sum[v]+=w; b.merge(u,v); } bool flag=true; for(int i=2;i<=n;i++) if(!b.query(1,i)){flag=false;break;} if(flag) { sort(sum+1,sum+n+1); printf("%d\n",sum[1]); } else puts("0"); } return 0; }