码迷,mamicode.com
首页 >  
搜索关键字:区间    ( 16036个结果
poj 3616 Milking Time dp
题目大意是一个奶牛可以在一些时间区间产奶,每个区间的产奶量已知,每次产完奶都要休息一下,问最大产奶量。dp方程类似最长上升子序列的n2算法,dp[i]表示以第i个区间结尾最多能产生多少奶。则dp[i] = max(dp[j] + e[i].z)。#include #include #include ...
分类:其他好文   时间:2014-07-16 19:09:37    阅读次数:216
Codeforces 446C 线段树 递推Fibonacci公式
聪哥推荐的题目区间修改和区间查询,但是此题新颖之处就在于他的区间修改不是个定值,而是从L 到 R 分别加 F1、F2、。。。Fr-l+1 (F为斐波那契数列)想了一下之后,觉得用fib的前缀和来解决,每次做懒惰标记记录下当前区间是从哪个L开始加起的,敲了一半之后发现有问题,就跟上次遇到的懒惰标记问题...
分类:其他好文   时间:2014-07-16 18:10:06    阅读次数:270
树状数组
树状数组 第01讲 什么是树状数组? 树状数组用来求区间元素和,求一次区间元素和的时间效率为O(logn)。 有些同学会觉得很奇怪。用一个数组S[i]保存序列A[]的前i个元素和,那么求区间i,j的元素和不就为S[j]-S[i-1],那么时间效率为O(1),岂不是更快? 但是,如果题目的A[]会改变呢?例如: 我们来定义下列问题:我们有n个盒子。可能的操作为 1...
分类:其他好文   时间:2014-07-16 17:35:47    阅读次数:214
CodeForces 444C DZY Loves Colors
题意: 一段区间a一开始是1、2、3、4……n这样的  每次1操作可以将[l,r]覆盖成x  同时得到abs(a[i]-x)的价值  2操作查询[l,r]的价值 思路: 线段树  又是一道加深线段树理解的题 操作2是简单的求和  线段树基本操作  难点在操作1 用cov表示该区间的值(如果为0说明是混合区间)  用val表示该区间的价值和 那么在更新时就不仅仅是找到 tree[...
分类:其他好文   时间:2014-07-16 11:43:00    阅读次数:220
UVA-1400 Ray, Pass me the Dishes, LA 3938 , 线段树,区间查询
题意:给出一列数(n个),m次查询区间[l,r]的最大连续区间[x,y](l 思路:动态查询区间最大连续区间; 如果是求最大连续区间和: 用线段树维护最大连续和sum_sub、最大前缀和sum_prefix、最大后缀和sum_suffix。 root.sum_sub = max{l.sum_sub, r.sum_sub, (l.sum_suffix + r.sum_prefix)...
分类:其他好文   时间:2014-07-16 11:42:15    阅读次数:222
POJ 2763 Housewife Wind LCA转RMQ+时间戳+线段树成段更新
题目来源:POJ 2763 Housewife Wind 题意:给你一棵树 2种操作0 x 求当前点到x的最短路 然后当前的位置为x; 1 i x 将第i条边的权值置为x 思路:树上两点u, v距离为d[u]+d[v]-2*d[LCA(u,v)] 现在d数组是变化的 对应每一条边的变化 他修改的是一个区间 用时间戳处理每个点管辖的区域 然后用线段树修改 线段树的叶子节点村的是根到每一个点的距离...
分类:Windows程序   时间:2014-07-16 10:50:58    阅读次数:445
hdu4366 Successor
好题!   但是感觉题目描述不是很清楚 这题只是询问开除某人后,他的下属中谁会替代他的位置,不会更新这个位置 要求一个子树中忠诚度最高的人。可以想到dfs树,保留时间戳,每个节点便表示一个区间 那么便可以建树维护最高忠诚度。。。只是要保证能力值也要比被开除者高 那么根据能力值从大到小对员工排序,依次更新。那么可以保证之前更新的节点的能力值都大于当前要查询的节点 这里要注意一点,能力值相同...
分类:其他好文   时间:2014-07-16 10:20:16    阅读次数:235
数学之路-python计算实战(12)-机器视觉-图像增强
分段线性变换将图像的值域分成多个值域并进行不同线性变换计算,可以压缩某部分灰度区,扩展另一部分灰度区间,下面以2个区间为例:for m in xrange(h): for n in xrange(w): if img[m,n]>Ds_min and img[m,n]<=Ds_internal: newimg[m,n]=int((Dd_internal...
分类:编程语言   时间:2014-07-15 13:05:56    阅读次数:362
ZOJ 3324 Machine
题意: 一段区间最开始元素都是0  每次操作可以令一段连续区间+1或-1(在加过的前提下才能减)  每次操作输出整段区间有多少段连续的0 思路: 一看区间操作首先考虑线段树  本题n比较大  但是操作数很小  而且每次操作最多影响一段区间(可用两个数字表示区间头尾)  那么就想到了离散化 我和网上题解的离散方式不同  我的更暴力更无脑- -b 为了保证区间连续性  不能只在线段树...
分类:其他好文   时间:2014-07-15 12:33:16    阅读次数:217
POJ3264——Balanced Lineup(线段树)
本文出自:http://blog.csdn.net/svitter 题意:在1~200,000个数中,取一段区间,然后在区间中找出最大的数和最小的数字,求这两个数字的差。 分析:按区间取值,很明显使用的线段树。区间大小取200000 * 4 = 8 * 10 ^5;           进行查询的时候,注意直接判断l, r 与mid的关系即可,一开始写的时候直接与tree[root]...
分类:其他好文   时间:2014-07-15 12:22:14    阅读次数:268
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!