摘要: 场上糊了一个小时都没糊出来(我甚至写了个假算法前半个多小时还没找到反例) 因为题目最后要求我们得到的是一条链,删除的边的数量和加边的数量一样多,所以我们要让删除的边最少。又因为我们要得到的一条链肯定是由多条组合起来的,而原树是由多条链构成的,我们最少要删除链数-1条边,那么问题转换成了如何把树划分成 阅读全文
posted @ 2021-05-10 19:31 cminus 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 可以发现可以构建出的是一棵树,且树的深度在20层及以内 刚开始想对于每条路径跑最短路,然后都跑一边得出答案,但是发现因为路径可以重叠,所以后面求的路径会修改一些公共路径的最短路,所以不能这么求 考虑什么是不变的,一个点到自己的最短路一定是0,所以从每个点出发,跑它到所有子节点的最短路,这个路一定是这 阅读全文
posted @ 2021-05-10 17:00 cminus 阅读(531) 评论(0) 推荐(0) 编辑