T1 这是一道模拟题。。。因为答案上界是,所以,直接枚举+强力剪枝是可以过的。 当然,你也可以选择更有技术含量的方式:枚举a,b,c,再运用二维前缀和求出c+1到n有多少满足条件的d。时间复杂度的优秀算法。 T2 首先有一个显然的的做法,即枚举左端点,在移动右端点的过程中用set维护中位数。但是这样太慢了,仔细分析一下,我们需要的是一个O(1)访问相邻点,O(1)插入的数据结构。 可以改成O(1)访问相邻点,O(1)删除,这样就可以用链表维护了,只需枚举左端点,从右往左减即可。 复杂度 T3 为了简化问题,我们先考虑当这棵树是有根树时该如何计算答案。如果我们把删除的节点依次编号为1~n,显然每...