hdu 4679 Terrorist’s destroy (三)

2014-11-23 20:10:31 · 作者: · 浏览: 22
} } int ans,ansid; void solve(int u,int pre){ for(int e=head[u] ; e!=-1 ; e=E[e].next){ int v=E[e].v; int w=E[e].w; int id=E[e].id; if(v==pre) continue; solve(v,u); if(man[u]&&man[v]){ int a=man[u],b=man[v]; if(a>b) swap(a,b); int tempmax=max((a-1) , (len+1-b) ); if(ans > w*tempmax){ ans=w*tempmax; ansid=id; } } else{ if(ans>w*len){ ans=w*len; ansid=id; } } } } int main(){ int n,T,cas=1; scanf("%d",&T); while(T--){ scanf("%d",&n); initedge(); for(int i=1 ; i