问题描述: 给定一个整数数组nums,返回其所有落在[low, upper]范围内(包含边界)的区间和的数目。 区间和sums(i, j)的定义为所有下标为i到j之间(i ≤ j)的元素的和,包含边界。 思路: 归并排序 问题可描述为,对每个sums[i],满足lower<=sums[i] - su ...
分类:
编程语言 时间:
2017-10-05 23:09:16
阅读次数:
324
题意:多组询问,每组询问给出一段区间[l,r]和一个数k,要求从[l,r]中选择不多于k个数,使得它们的异或和最小,输出最小的异或和、选取的数的个数,选取的数 题解:大力分类讨论一波1、k==1,sum=l2、k==2,如果r==l+1,则sum=min(l,l^r),否则就是13、k==3,答案不 ...
分类:
其他好文 时间:
2017-09-29 22:59:50
阅读次数:
196
题目大意: 维护一个数列,支持区间乘,区间加,求区间和. 线段树题,对于乘和加操作我们可以维护一个标记.对于乘用乘法分配律分解. 代码如下: ...
分类:
其他好文 时间:
2017-09-29 22:59:01
阅读次数:
231
P3924 康娜的线段树 P3924 康娜的线段树 P3924 康娜的线段树 题目描述 小林是个程序媛,不可避免地康娜对这种人类的“魔法”产生了浓厚的兴趣,于是小林开始教她OI。 今天康娜学习了一种叫做线段树的神奇魔法,这种魔法可以维护一段区间的信息,是非常厉害的东西。康娜试着写了一棵维护区间和的线 ...
分类:
其他好文 时间:
2017-09-28 20:47:20
阅读次数:
240
1、求区间和 1 #include <cstdio> 2 #include <iostream> 3 using namespace std; 4 const int maxn=50000+5; 5 int a[maxn]; 6 struct Node 7 { 8 int l,r,sum; 9 } ...
分类:
其他好文 时间:
2017-09-28 14:11:06
阅读次数:
133
【传送门:BZOJ1202】 简要题意: 给出T组数据,每组数据有n个点,每个点都有值,给出m个区间和,判断是否所有区间和都合法 题解: 乍一眼,就是前缀和的处理,但并没有想到做法,后来发现并查集维护前缀和好像行得通,而且网上的神犇们都用并查集,而且似乎叫做带权并查集 注意当求i点祖先时,要记得对v ...
分类:
其他好文 时间:
2017-09-17 17:27:16
阅读次数:
163
传送门 做法:每个卫星对应圆上一段弧度区间,可以直接算出,问题转化成支持加/删区间和询问其中两个区间是否有交以及它们的交是否被其他区间包含。我一开始写了个O(nlog^2n)的cdq分治,判这个交的部分被包含次数是否超过2,后来dalao告诉我,直接线段树维护每个左端点对应的右端点最远在哪,每个左端 ...
分类:
其他好文 时间:
2017-09-13 19:21:49
阅读次数:
153
斜率优化的模板题 给出n个数以及M,你可以将这些数划分成几个区间,每个区间的值是里面数的和的平方+M,问所有区间值总和最小是多少。 如果不考虑平方,那么我们显然可以使用队列维护单调性,优化DP的线性方法来做,但是该题要求的是区间和的平方,于是要转换单调的计算方法为斜率,也就是凸线。 其他就是最基本的 ...
分类:
其他好文 时间:
2017-09-07 09:54:08
阅读次数:
158
2017-09-06 21:32:22 writer:pprp 可以作为一个模板 ...
分类:
其他好文 时间:
2017-09-06 22:06:49
阅读次数:
121
P2434 [SDOI2005]区间 题目描述 现给定n个闭区间[ai, bi],1<=i<=n。这些区间的并可以表示为一些不相交的闭区间的并。你的任务就是在这些表示方式中找出包含最少区间的方案。你的输出应该按照区间的升序排列。这里如果说两个区间[a, b]和[c, d]是按照升序排列的,那么我们有 ...
分类:
其他好文 时间:
2017-09-06 19:55:17
阅读次数:
279