- 博客(2)
- 收藏
- 关注
原创 POJ1383
树的直径。开始写了一个dfs的然后RT了。于是后来改成写两个bfs,然后就过了。思路,两次bfs,第一次随便从哪一个节点开始找到一个距离它最远的节点。然后第二次bfs从找到的最远的节点开始找最远的路,即为树的直径。这里有一个很好的证明,从别人博客看来的: BFS找到的最长路即为树的直径; 原理: 设起点为u,第一次BFS找到的终点v一定是树的直径的一个端点 证明: 1) 如果u 是直径上的点
2012-05-19 00:37:41 503
原创 HDU2196
很早之前就说要把树形DP学会,现在才开始。暑假就快到了,而我却无所事事了一个月,这一个月几乎没有学算法,几乎没有敲题。周末和队友做了金华的题,觉得还好。但是那么简单的B我却无从下手,又觉得眼熟,原来之前的练习赛中出现了这道题,然后不会就不会了。现在开始恢复状态了,好好打完一个暑假,尽全力,不要留遗憾也就够了。 回归到这道题目中来,就是简单的两次DFS。首先第一次是建树,并且求出经过它儿子节点的最
2012-05-15 17:14:13 1644
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人