Processing math: 100%

省选模拟8

T1:
分块,块内排序,因为M操作只有递增时有用,所以可以每次在块上暴力移动指针,均摊下来是对的
利用差分O(1)记录M操作使权值变化的次数,每次询问时重构所在块即可
A操作很简单,整块打标记,两端暴力重构即可
因为重构的块数是O(n)的,所以每次暴力sort就行了,复杂度是加起来的
最终复杂度为O(nn+nlogn)

T2:
题解说的对啊!

T3:
考虑最小割,然后样例就炸了
发现有些路径经过了不止一条边,又发现这些路径都是从S集合->T集合->S集合->T集合
其中都经过了一条从T集合到S集合的边
考虑如何求在割去这种边的情况下的最小割
将反边设置为INF即可

posted @   G_keng  阅读(99)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示