/*int targan(int a,int b) { if(a==b) return a; else if(rank[a]>rank[b]) return targan(pre[a],b); else return targan(a,pre[b]); }*/深搜写法int main() { int n,m,a,i,b,c; while(scanf("%d%d",&n,&m)!=-1) { init(); while(m--) { scanf("%d%d%d",&a,&b,&c); add(a,b,c); add(b,a,c); } bfs(1); for(i=1;i<=n;i++) printf("%d ",rank[i]); while(scanf("%d%d",&a,&b)!=-1) { int ans=targan(a,b); printf("%d\n",ans); } } }
相关文章: