树的直径
树型dp求树的直径
优缺点:
优点为可以处理边权为负的情况,但不易得到直径的路径(指树的直径经过什么点)。
代码模板:
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int head[N],cent=0;
int n;
struct Tree
{
int v,w;
int next;
}tr[N*2];
void add(int u,int v,int w)
{
tr[cent].v=v;
tr[cent].w=w;
tr[cent].next=head[u];
head[u]=cent++;
}
int res=0;
int dp[N];
void dfs(int u,int fa)
{
for(int i=head[u];~i;i=tr[i].next)