DP【x】表示从x出发走向以x为根的子树,能够到达的最远节点的距离
void get_dp(ll now)
{
flag[now] = true; //标记是否处理过
for(ll i = head[now]; i != 0; i = E[i].next)
{
ll to = E[i].to;
if(!flag[to])
{
get_dp(to);
res = max(res,dp[now]+dp[to]+E[i].w); //ans为答案
dp[now] = max(dp[now],dp[to]+E[i].w);
}
}
}
本文探讨了在图论中使用深度优先搜索(DFS)结合动态规划(DP)求解最远距离问题的方法。通过递归地遍历图的每个节点,计算以该节点为根的子树中最远节点的距离,最终找到整个图中的最长路径。
949

被折叠的 条评论
为什么被折叠?



