P1111
思路:最小生成树(MST),详情见[模板] MST
AC代码:
#include#include #include #include using namespace std; struct p { int x,y,t; }e[200000]; int f[200000],n,m; int cmp(const p &a,const p &b){return a.t '9')ch=getchar(); while(ch>='0'&&ch<='9')x=x*10+ch-48,ch=getchar(); return x; } int main() { n=read(),m=read(); if(n==1){cout<<0;return 0;} for(int i=1;i<=m;i++)e[i].x=read(),e[i].y=read(),e[i].t=read(); sort(e+1,e+m+1,cmp); for(int i=1;i<=n;i++)f[i]=i; for(int i=1;i<=m;i++) { int fx=find(e[i].x),fy=find(e[i].y); if(fx!=fy)f[fx]=fy,n--; if(n==1){cout< 又一道题被你终结了!


![[题解]P1111 [题解]P1111](http://www.mshxw.com/aiimages/31/330074.png)
