T1
考虑先跑m遍KMP,记录下每个可以造成贡献的起点,再直接\(O(n^2)\)DP就可以了。思路比较好想,据说可以AC自动机做
得分:没交上去......
T2
观察前50%的数据,发现O(nk)可以直接过。再考虑第四个子任务。所有颜色相同,那么其他的K-1种颜色都是连通图,通过边数判断一下是否是树即可。正解考虑分治:考虑分治。设solve(l,r) 表示解决删去的颜色在 [l,r] 时的问题。先将颜色在[l,mid] 的边加到图中,递归solve(mid+1,r) 即可求得删去的颜色在 [mid+1,r] 的所有答案;同理可以求得删去的颜色在[l,mid] 的所有答案。使用可撤销并查集维护连通性即可。
得分;50
T3
考虑把两值相减看作是一段区间得长度。交换两个相交的区间一定是不优的,如果是交换两个不相交的区间。令i的右端点小于j的左端点,交换以后的两个区间一个是i的左端点到j的右端点,一个是i的右端点到j的左端点,也就是多了两倍的j的左端点减i的右端点(当然如果这个值小于0显然不该操作i和j)
接下来的事就很简单了,把每个区间的左端点升序,右端点降序,取前K大,当然小于0就不取。
记得是加贡献,原来的贡献也是要算的
得分:70
T4
不会就是不会
标签:得分,颜色,mid,区间,端点,20231101,删去 From: https://www.cnblogs.com/wangwenhan/p/17803438.html