topcoder13185 TreePuzzle】的更多相关文章

https://community.topcoder.com/stat?c=problem_statement&pm=13185 被wck屠了. 考试时候想分类讨论,结果发现情况有点复杂,最后还是没调出来. 回去看了看题解,发现好像是树形DP,状态记得很巧妙. 假设当前红点在$x$,从$fa$来,容易知道此时$fa$是空的. 容易知道以$fa$为根的子树(即如图的绿色圈)中的黑点是可以任意移动的. 因为$fa$是空的,所以我们可以先把红点从$x$移到$fa$,然后将以$x$为子树中的所以黑点任意…
题目链接 这一道题看起来像是一道贪心的水题,但是情况较难考虑周全,比如下图,我就考虑漏了这种情况,点0是可以移动到点1的.然后我就各种奇怪的分类讨论.最终还是没能A,决定放弃治疗. 然后我看了看解答,感觉学到了不少东西,感觉解答的思路非常清晰.其中有两点是比较重要的. 我们记录状态只需要关心红点的位置. 在树里,判断某个点z是否在x,y的路径上,可以用距离判断 充分利用数据范围小的好处.各种暴力枚举. 接下来,我打算去刷刷codeforces,因为bzoj的题目我感觉有一种比较浓的中国味道.…