E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
leetcode#单调栈
poj 2559 dp(柱状图的最大面积)
思路:维护一个
单调栈
。出栈时对元素的扩展面积进行计算。注意对__int64类型临时变量赋值时需要强制类型转换。#include #include #definemax(a,b)((a)>(b)?
dumeichen
·
2014-09-05 21:00
萌萌的
单调栈
: poj2796 , poj2559 ,
(栈的基本性质)操作:和栈一样
单调栈
一样,入栈和出栈.入栈前对入栈元素进行检测:如4,5,3,7,7,9
Hivoodoo
·
2014-08-18 21:00
数据结构
ACM
单调栈
POJ 2559 Largest Rectangle in a Histogram RMQ ||
单调栈
题目链接:点击打开链接题意就是求最大面积枚举每个柱子作为起点然后二分两边长度。求个区间最值。#include #include #include usingnamespacestd; #definelllonglong #defineN100100 inlineboolrd(int&n){ intx=0,tmp=1; charc=getchar(); while((c'9')&&c!='-'&&c
qq574857122
·
2014-08-16 17:00
2014多校联合六(HDU 4923 HDU 4925 HDU 4927 HDU 4930)
使得方差最小思路:可以想到最后的结果中 B序列的值一定是一段一段的 那么我们可以类似贪心去搞 对于一段序列我们可以求出什么样的b值使得方差最小 即序列中1的个数除以序列长度 又因为B是单调的 可以用一个
单调栈
去模拟
u013351160
·
2014-08-07 19:00
数学
HDU
杂题
XTU 1205 Range 2014湖南邀请赛C
单调栈
XTU1205Range2014湖南邀请赛C
单调栈
ACM题目地址:XTU1205题意: 在一个序列A中,Range(A)=Max(A)-Min(A)+1; 求一个序列的子序列中所有子序列的Range的和
hcbbt
·
2014-06-07 23:00
ACM
单调栈
模型图解入门(HDU1506)
HDU 1506面积合并http://acm.hdu.edu.cn/showproblem.php?pid=1506很经典的一个题目了。保持栈非严格单调递增。 4号节点来的时候, 3号节点已经无法向右扩展。 1、则3号的生命周期结束。 以3号节点高度为矩阵长的宽度为(4-3)。 2、同时2号的生命周期结束。 以2号节点高度为矩阵长的宽度为(4-2) , 因为2号可以向右扩展到4号的左边。
u013491262
·
2014-04-03 23:00
hdu 1506 Largest Rectangle in a Histogram(
单调栈
||dp)
小记:这里学到了一个新的数据结构,
单调栈
。从最初的自己动手实践
单调栈
,到理解清楚
单调栈
并用于解决题目。思路:所谓
单调栈
,就是栈里的元素从栈底到栈顶都是递增或者递减的的栈称作
单调栈
。
ljd4305
·
2014-03-30 10:00
POJ:2556 Largest Rectangle in a Histogram
单调栈
的应用。思路类似于之前做得一个题,L【i】,R【i】,H【i】分别表示长度为H【i】的长方形的左端点和右端点。显然最大面积等于max{H【i】*(R【i】-L【i】+1)}。
kkkwjx
·
2014-03-21 08:00
POJ 2796
单调栈
~
#include #include #include #include #include #include #include #include #include usingnamespacestd; #definemxn102000 #defineinf0x3f3f3f3f #defineeps1e-8 #defineLLlonglong #defineullunsignedlonglong #
u013654696
·
2014-02-23 13:00
POJ 2559
单调栈
#include #include #include #include #include #include #include #include #include usingnamespacestd; #definemxn102000 #defineinf0x3f3f3f3f #defineeps1e-8 #defineLLlonglong #defineullunsignedlonglong #
u013654696
·
2014-02-23 12:00
UVA 1330 - City Game(扫描方法 |
单调栈
维护)
Bobisastrategygameprogrammingspecialist.Inhisnewcitybuildinggamethegamingenvironmentisasfollows:acityisbuiltupbyareas,inwhichtherearestreets,trees,factoriesandbuildings.Thereisstillsomespaceintheareat
u011217342
·
2014-01-20 11:00
leetcode Maximal Rectangle
///思路一:看成是每一行向上可以延伸到多远,然后求以这个为底边的一个最大矩形,就是一个
单调栈
问题了!
sysucph
·
2013-12-11 18:00
单调栈
的一些应用
1、何为
单调栈
:顾名思义,栈中的元素是按照某种方式排列,但是必须是单调的,如果某元素破坏了栈的单调性,就弹出栈的元素,直到该元素满足栈的单调性为止。
ren_hui
·
2013-12-01 22:00
单调栈
hm 与 zx 的故事系列
CF 280B - Maximum Xor Secondary(
单调栈
)
同样维护一个
单调栈
,可以O(n)解决掉。然
nyist_xiaod
·
2013-11-30 09:32
◆点点滴滴
【动态规划】
CF 280B - Maximum Xor Secondary(
单调栈
)
同样维护一个
单调栈
,可以O(n)解决掉。然
dgq8211
·
2013-11-30 09:00
FOJ 2136 取糖果(
单调栈
)
做法是先用
单调栈
可以O(n)预处理出每个a[i]作为区间最大值能扩展到的最远位置,记为l[i]和r[i]。然后将所有元素排序,将排序后先出现的元素(即更小的元素)
dgq8211
·
2013-11-30 08:00
sgu 155 Cartesian Tree (poj2201) 笛卡尔树构造
构造的方法大体就是先按key排序,然后用一个
单调栈
维护这棵树最右端的链,每次插入节点tp的时候就从栈中找到最后一个a大于当前节点的节点tq,把tq接到tp的左儿子(因为key排序了,所以tq的key一定小于
yanglei040
·
2013-11-29 11:00
Codeforces Round #124 (Div. 1)
解法是维护一个
单调栈
,就是说每次来一个字符,就从栈顶开始,如果当前字符比栈顶元素大,就踢掉栈顶元素,一直踢到小于等于为止,最后把栈里的元素依次输出就好了。代码:B题:给出一个地图,和一个起始点。
No__stop
·
2013-11-19 21:00
codeforces
Codeforces Round #189 (Div. 1)
代码:B题:倒着往前推,用一个dp[i]表示i如果把i后面都合并掉,那么要合并几次,然后用
单调栈
保存下标,单调性为栈顶元素所对应的数组中的值最小。代码:C题:这题较难,我写在另一篇博客上了,请移步
No__stop
·
2013-11-15 23:00
codeforces
单调栈
1.作用
单调栈
解决的是以某个值为最小(最大)值的最大区间2.实现原理求最小值(最大值)的最大区间,维护一个不存在相等条件的严格递增(严格递减)的栈,当遇到一个比栈顶小(大)的值的时候开始弹栈,弹栈停止的位置到这个值的区间即为此值左边的最大区间
qiusuo800
·
2013-10-31 14:00
单调栈
题目大意:给出一个柱形统计图(histogram),它的每个项目的宽度是1,高度和具体问题有关。现在编程求出在这个柱形图中的最大面积的长方形。例如: 721451337表示柱形图有7个数据,分别是2145133,对应的柱形图如下,最后求出来的面积最大的图如右图所示。分析: 如果采用枚举的方式,如果当前我们枚举项是i=0,即height=2, 我们用另外两个变量j和k向左和向右两个方向搜素,找到第一
zaizai_loong
·
2013-10-17 21:00
HDOJ 4362 —— DP + 二分 |
单调栈
DragonBallTimeLimit:3000/1500MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):1897 AcceptedSubmission(s):672ProblemDescriptionSeanhasgotaTreasuremapwhichshowswhenandwheret
zkzxmzk
·
2013-10-07 01:00
dp
ACM
二分
单调栈
hdu 1506 Largest Rectangle in a Histogram
pid=15062.分析通过本题我认识了一个新的数据结构---“
单调栈
”。通过
单调栈
,可以快速求出以当前元素为最小(大)值的区间,这样用最小(大)值乘以区间长度即可。
qiusuo800
·
2013-10-01 10:00
Poj 2082(
单调栈
)
TerribleSetsTimeLimit: 1000MS MemoryLimit: 30000KTotalSubmissions: 2778 Accepted: 1413DescriptionLetNbethesetofallnaturalnumbers{0,1,2,...},andRbethesetofallrealnumbers.wi,hifori=1...naresomeelementsi
Wiking__acm
·
2013-08-15 00:00
POJ 2559 -- Largest Rectangle in a Histogram (
单调栈
)
#include #include #include #include #include #include #include #include #include #include #include #include #include #definelllonglong usingnamespacestd; structHEHE { lllen,h; }; stackst; intmain(
dlut_ju
·
2013-04-25 20:00
SOJ 3085: windy's cake V
一道
单调栈
基础题,也可以用双端队列来做题目链接:http://cstest.scu.edu.cn/soj/problem.action?
frog1902
·
2012-12-17 11:00
POJ3250 牛的视野(
单调栈
)
这个可以使用
单调栈
来解决。从左到右依次读取当前牛的高度,从栈顶开始把高度小于或等于当前牛的高度的那些元素删除,此时栈中剩下的元素的数量就是可以看见当
alongela
·
2012-11-27 13:00
单调栈
单调栈
与单调队列很相似。首先栈是后进先出的,单调性指的是严格的递增或者递减。
单调栈
有以下两个性质:1、若是单调递增栈,则从栈顶到栈底的元素是严格递增的。
alongela
·
2012-11-26 21:00
HDU 4328
单调栈
和简单DP#include #include #include usingnamespacestd; structpoint{ inth; intw; }stack[1005]; intn,m;
waitfor_
·
2012-09-28 15:00
POJ 3415 Common Substrings(后缀数组+
单调栈
)
转载请注明出处,谢谢http://blog.csdn.net/acm_cxlove/article/details/7854526 by---cxlove 题目:求出长度不小于k的公共子串个数http://poj.org/problem?id=3415 继续论文上的题目。计算A的某个后缀与B的某个后缀的最长公共前缀长度,如果长度L大于k,则加上L-k+1组。将两个字符串连接起来,中间用一
ACM_cxlove
·
2012-09-05 16:00
算法
ini
ZOJ Monthly, August 2012
:给出一个10^5的数组,5w次询问,每次询问给出一段区间[l,r]要求判断区间里的每个数是否只是出现了一次,如果是输出OK,否则输出从右向左第一个出现两次的数 思路:我是用线段树离线查询做的,感觉
单调栈
也可以做得样子
struggle_mind
·
2012-08-26 17:00
单调栈
的介绍与应用
定义:
单调栈
,顾名思义就是说栈内的元素,按照某种方式排序下,必须是单调的。如果新入栈的元素破坏了单调性,就弹出栈内元素,知道满足单调性。
I smell magic in the air
·
2012-08-25 11:00
foj 2075 Substring
题目思路:后缀数组加
单调栈
,n为1的时候要特判,不过数据有点水,不判都能过。
Wings_of_Liberty
·
2012-08-18 09:00
经典面试题--寻找01矩阵中最大的1矩形(POJ 3494)
后来知道了一个东西叫
单调栈
然后做了一些题,居然发现POJ上的这个题目,和那个面试题一模一样。所以就
hopeztm
·
2012-08-15 19:00
C++
算法
面试
struct
Matrix
POJ 2559
单调栈
Histogram
题目在http://poj.org/problem?id=2559。这个题目是一个好朋友给我讲的方法,我按照自己的理解,敲出来代码。所以把算法流程和代码贡献出来,希望和大家共同学习。题目大意:给出一个柱形统计图(histogram),它的每个项目的宽度是1,高度和具体问题有关。现在编程求出在这个柱形图中的最大面积的长方形。例如: 721451337表示柱形图有7个数据,分别是2145133,对应的
hopeztm
·
2012-08-15 12:00
编程
C++
工作
算法
struct
扩展
POJ-3250 Bad Hair Day
单调栈
Bad Hair Day Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 10300 Accepted: 3458 Description Some of Farmer John's N cows (1 ≤ N ≤ 80,000) are having a bad
·
2012-08-02 11:00
AIR
poj 3415 Common Substrings
id=3415 题目思路:求长度不小于k的公共子串的个数,做法是维护一个
单调栈
,详见论文。
java-mans
·
2012-07-30 10:00
substring
HDU 1506 Largest Rectangle in a Histogram(
单调栈
)
我们可以用一个
单调栈
(类似单调队列)由低到高来存储它的高度,并用数组对每个高度记录一下它前面(包括它自己)一共有多少个比它高的,可以看做它的左宽。
dgq8211
·
2012-07-13 09:00
Codeforces Round #129 (Div. 2)
CodeforcesRound#129(Div.2)A水题B题,我用的是
单调栈
来搞的,思路:从右向左扫描,维护一个单调递减的栈,如果新加入的元素比栈顶元素高的话,就ans+=差值#include #include
struggle_mind
·
2012-07-12 18:00
单调栈
总结 来自poj
单调栈
不用再多介绍,我这里是自己写的实现,可能没有很大得优化,但也懒得去看别人怎么优化了~到现在做的题都是大同小异,把代码改改就能迅速的过。
单调栈
能解决的问题——求一个以某个值为最小值的区间!
xxx_bug
·
2012-05-01 10:00
POJ-2559(单增栈)
分析:这是一个
单调栈
的问题,维护栈单调不减。
单调栈
主要是大家要自己枚举,需要找到每个元素最左能扩展到那,最右能扩展到那,当然最小的是你枚举的那个元素。
famousDT
·
2012-03-15 11:00
单调队列、
单调栈
(第一周DIY)
LargestRectangleinaHistogramTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):4087 AcceptedSubmission(s):1218ProblemDescriptionAhistogramisapolygoncompos
shuangde800
·
2012-03-07 00:00
测试
Integer
input
each
output
Numbers
单调队列、
单调栈
(第一周DIY)
LargestRectangleinaHistogramTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):4087AcceptedSubmission(s):1218ProblemDescriptionAhistogramisapolygoncomposedofaseq
king_tt
·
2012-03-07 00:00
队列
[
单调栈
]poj 3250:Bad Hair Day
大致思路: 做到poj3415,居然碰到“
单调栈
”这种牛逼的玩意,于是专门来把这道题切掉。
暴风雪
·
2012-02-20 18:00
数据结构
ACM
poj 3250
单调栈
POJ2082 Terrible Sets [DP
单调栈
]
题意:能把题目写得这么纠结真是种境界。本质即是给定一定顺序的矩形,每个矩形都紧挨着x轴,问最大的矩形面积是?思路:1.O(n^2)的暴力法:#include #include #include #include #definemax(a,b)(a>b?a:b) #defineabs(a)((a)>0?(a):-(a)) #definemin(a,b)(a=1;j--) { if(rect[j].h
wuyanyi
·
2012-02-09 13:00
算法
struct
POJ 2796 Feel Good
单调栈
最近做这方面的题很多,感觉
单调栈
很是神奇,通过维护一个单调不减的栈,遇到小于栈顶的栈顶元素便出栈,此时跟新结果。
waitfor_
·
2012-01-21 16:00
POJ 2082 Terrible Sets
单调栈
的应用
题目条件叙述挺恶心的,其实表达意思挺简单的。就是给你几个矩形(依次在x轴上排开),问你能够组成的最大矩形面积。本题采用一个栈作为存储数据结构,当前读入的矩形的高度如果大于栈顶矩形的高度的话直接进栈,否则依次出栈计算跟新最大面积,直到某一刻栈顶的高度小于当前读入的矩形的高度,进栈,这样把所以矩形都读入后在扫一遍栈跟新最大面积即可。#include #include #include #include
waitfor_
·
2012-01-21 01:00
数据结构
struct
存储
一些动规题
先缩环,一维dfs,二维线段树or
单调栈
。
huyuncong
·
2011-10-27 16:00
POJ2559 Largest Rectangle in a Histogram [
单调栈
]
还是
单调栈
的应用,关键还是理解单调时候可以用O(N)的算法处理,所以处理成
单调栈
。本质思路参看前一篇文章。不过注意要用__int64或者longlong。
wuyanyi
·
2011-06-24 11:00
算法
上一页
49
50
51
52
53
54
55
56
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他