好惭愧,今天就做了一题。今天的构造题好难,最简单的都是省选QwQ
1.巡逻:主要考察了树的直径,两种方法求,①树形dp,d[x]表示以x为根节点向下走最多能走多远,能处理负权情况②两次dfs,第一次任意点出发,找最远点,再从这个最远点出发,再找一次,不能处理负权情况。③k取2的时候要考虑两个环重叠的情况,现将原来的直径转负再dp;
好惭愧,今天就做了一题。今天的构造题好难,最简单的都是省选QwQ
1.巡逻:主要考察了树的直径,两种方法求,①树形dp,d[x]表示以x为根节点向下走最多能走多远,能处理负权情况②两次dfs,第一次任意点出发,找最远点,再从这个最远点出发,再找一次,不能处理负权情况。③k取2的时候要考虑两个环重叠的情况,现将原来的直径转负再dp;