码迷,mamicode.com
首页 >  
搜索关键字:区间    ( 16036个结果
最大连续子序列的和
给你一段包含负数的序列,问你这段序列的最大和是多少?并且打印出最大和区间?例如假设有两个序列如下: 5: 6 -1 5 4 -7 7: 0 6 -1 1 -6 7 -5 很容易看出第一个包含5个元素的序列的最大和是14.区间从1到4.第二个最大和是7,区间可以有两个,从1到6或则从6到6...
分类:其他好文   时间:2014-12-14 18:33:01    阅读次数:145
HDU 5145 NPY and girls 莫队算法
对于这类区间查询的问题,如果可以用O(1)的复杂度推到一个曼哈顿距离为1的另外区间的话,就可以直接用莫队算法搞。从网上搜到的有两种搞法。第一种是先建立曼哈顿距离最小生成树,然后直接dfs遍历整棵树来求解的。还有一种是先分块,然后把查询按照块的编号为第一关键字,右边界为第二关键字排序,排序直接直接暴力...
分类:编程语言   时间:2014-12-14 14:33:46    阅读次数:194
区间DP(总结)
学长一晚上的耐心讲解,使我明白区间DP这么高级的东西,还是挺容易的。也就是在一段区间内的动态规划。 下面用例题进行总结。 例题:石子归并。 描述 有N堆石子排成一排,每堆石子有一定的数量。现要将N堆石子并成为一堆。合并的过程只能每次将相邻的两堆石子堆成一堆,并将新的一堆石子数记为该次合并的...
分类:其他好文   时间:2014-12-14 14:28:10    阅读次数:116
hdu--4902--线段树
题意 前面一段废话= =这题 最有意思的应该是出题人 是clj这题的时限放的太宽了 给了15s 我也是醉了区间更新。 1 #include 2 #include 3 using namespace std; 4 5 const int size = 200010; 6 int a[...
分类:其他好文   时间:2014-12-14 00:34:40    阅读次数:260
NYOJ116 士兵杀敌(二)【树状数组】
题目大意:给你一个区间[1,N],每一个点上一个值。接下来是M条命令。 QUERY X Y表示询问区间[X,Y]的和是多少。ADD X Y表示第X个点增加 Y。 思路:可用线段树或是树状数组来做。这次用树状数组试试。 query(n);表示询问前n项的和。add(p,val)表示第p个点增加val。...
分类:编程语言   时间:2014-12-13 23:23:40    阅读次数:406
STL源码分析--算法
STL源码剖析—算法          在STL中的算法中一些算法是可以根据算法名字来判断算法作用的。所有算法的参数都是迭代器,不过不同的算法调用的迭代器类型也是不同的。多有的STL算法都作用在由迭代器{first,lase)所表示出来的区间上。拷贝(copy)交换(swap)替换(replace)填写(fill)删除(remove)排列组合(permutation)分割(partition)随...
分类:编程语言   时间:2014-12-13 19:27:32    阅读次数:198
NYOJ108 士兵杀敌(一)【树状数组】
题目大意:给你一个区间[1,N],每个点上有一个值,然后是M个询问。 每次询问区间[X,Y]的和是多少。 思路:虽然递推直接求前N项和,但是还是想用树状数组的方法做。 注:query();询问前N项和...
分类:编程语言   时间:2014-12-13 19:25:20    阅读次数:176
POJ 3347 Kadj Squares --扩展长度,几何,线段覆盖
题意: n个正方形,边长为S[i],斜45度按顺序平放在坐标轴上,尽量靠左,但是不能与前面任何一个相交,问从上往下看,哪些正方形是可见的。解法: 我们先将边长扩张成sqrt(2)倍边长,这样的话就可以直接进行整数运算了。然后分两步:1.求出所有的b[i]2.再进行区间覆盖判定第一步:我们知道前面所有...
分类:其他好文   时间:2014-12-13 15:03:59    阅读次数:232
BZOJ 3790 神奇项链 Hash+二分
题目大意:给出一个字符串,求出这是最少由多少个回文串组成的。回文串可以重叠。 思路:将原串中的所有回文串都统计出来,然后变成一些区间,问题就转化成了区间并的问题。 CODE: #include #include #include #include #define MAX 400010 #define BASE 1333 #define INF 0x3f3f3f...
分类:其他好文   时间:2014-12-13 12:19:36    阅读次数:200
STL笔记(4)关于erase,remove
STL笔记(4)关于erase,remove你要erase的元素很容易识别。它们是从区间的“新逻辑终点”开始持续到区间真的终点的原来区间的元素。要除去那些元素,你要做的所有事情就是用那两个迭代器调用erase的区间形式(参见条款5)。因为remove本身很方便地返回了区间新逻辑终点的迭代器,这个调用...
分类:其他好文   时间:2014-12-13 00:45:22    阅读次数:296
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!