AvoidStraightLine
ABC312G:Avoid Straight Line
为Distance Sums 2的简单扩展,做法完全一致。
题解:https://blog.csdn.net/weixin_52536621/article/details/127039502)(树形那一栏)
考虑对于一个三元组,要求解不在一条简单路径上的三点,发现不好做,那我们可以求在一条简单路径上的三点,然后根据组合数
然后发现只要确定了两个端点,然后中间任选一个点即可。这样的方案肯定是唯一的。
我们可以用那道题的做法处理出距离和,减去
AC
对于距离和的部分,不需要这么麻烦。
我们直接考虑每条边的贡献即可,每条边的贡献为子树内的所有点
直接一遍 dfs
处理出每条边的贡献加和,然后最后去除两两点对的端点费用(即
AC2
本文作者:wscqwq
本文链接:https://www.cnblogs.com/wscqwq/p/17591019.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步