分块
Mima_Reincarnation
这个作者很懒,什么都没留下…
展开
-
BZOJ4167: 永远亭的竹笋采摘 分块
题意:给定一个序列,将其分成K段,每段元素不得全相同,求sigma(每段中不同元素差值的最小值)的最小值 n<=50000,k<=1000,序列中元素<=n,序列随机生成 既然序列是随机的,我们可以想到一个区间可能要延伸很长一段才会改变其中的最小差值,那么不妨将所有有贡献的点对都枚举出来(即:这个区间的两个端点之差是整个区间中最小的),问题就转化成了在数轴上有一些带权值的线段,选择K条不相交的使原创 2017-04-24 07:21:50 · 1054 阅读 · 10 评论 -
BZOJ4865: [Ynoi2017]由乃运椰子 分块
http://www.lydsy.com/JudgeOnline/problem.php?id=4865 写题面的人语死早。。。S为空的话也是要把元素插入进去的(要不然岂不是一直为空),然后每次异或的是上一次答案的相反数。。。还有莫名其妙的标点缺失和语句重复。。。 于是就是在问能拆分成最少多少个单调增的序列,显然就是众数个数,所以相当于查询区间众数。 传统做法就是分块,预处理每两块之间原创 2017-06-08 20:06:40 · 848 阅读 · 0 评论 -
BZOJ4381: [POI2015]Odwiedziny 分块 长链剖分
http://www.lydsy.com/JudgeOnline/problem.php?id=4381 若步长小于sqrt(n)则可以预处理每个点走某种步长走到跟的权值和然后减去LCA上面的部分;若步长大于sqrt(n)则暴力走,为了避免LCA算重,可以先防止两个点走到LCA,然后再特判能否走到LCA上。第一种情况要注意不要计算走过原创 2017-06-09 19:03:48 · 902 阅读 · 0 评论