摘要: 首先merge就是先delete两次再insert,Max就是整个区间的最大值减最小值,Min就是区间中所有相邻两数差的最小值。 Splay支持区间最大值,区间最小值,区间相邻差最小值即可。 阅读全文
posted @ 2018-12-16 19:01 HocRiser 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 越来越写不来简单题了。 就是求a[i]到b[i]之间的位置有多少个数是第一次出现且目前仅出现了一次。树状数组,每次给第一次出现的数的位置+1,若到了第二次出现的位置,则将第一次出现的位置-1即可。 阅读全文
posted @ 2018-12-16 18:34 HocRiser 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 对每行每列分别建一个点,问题转为选n+m条边,并给每条边选一个点覆盖,使每个点都被覆盖。也就是最小生成环套树森林。 用和Kruskal一样的方法,将边从小到大排序,若一条边被选入后连通块仍然是一个环套树(即边数不多于点数)则连上。证明大致同Kruskal。 阅读全文
posted @ 2018-12-16 16:12 HocRiser 阅读(238) 评论(0) 推荐(0) 编辑