时间:2015-06-05 来源:

解题报告之POJ2559LargestRectangleinaHistogram 【移动开发】

解题报告 之 POJ 2559 Largest Rectangle in a Histogram Description

A histogram is a polygon composed of a sequence of rectangles aligned at a common base line. The rectangles have equal widths but may have different heights. For example, 3, measured in units where 1 is the width of the rectangles:  Usually, e.g., i.e., is important. Calculate the area of the largest rectangle in a histogram that is aligned at the common base line, denoting the number of rectangles it is composed of. You may assume that 1<=n<=100000. Then follow n integers h1,hn, scanf is recommended. 题目大意:给你一堆宽度为1,高度不同的矩形条.问你能框出一个最大矩形面积为多少. 分析:有两种办法解题,网站div+css比较直观的是DP,还有一种方法叫作单调栈.我两种方法都试了一下.首先先说一下DP的方法.对于每一个矩形.我们确定一下其左右两边高度>=它的矩形数量,符合w3c标准如果遇到<的网页外包接活,则停止扩展,wap前端外包因为一定会在更新那个遇到的最小矩形的时候把当前这种情况考虑进去web前端制作,所以现在就不用扩展了. 如果有h[i]表示高度,div+css制作l[i]表示i左边有几个矩形比i高承接网页制作, r[MAXN]; int main() { int n; while(scanf( "%d", &h[i] ); } for(int i = 1; i <= n; i++) { l[i] = r[i] = i; } for(int i = 1; i <= n; i++) { while(h[l[i] - 1] >= h[i]) l[i] = l[l[i] - 1]; } for(int i = n; i >= 1; i--) { while(h[r[i] + 1] >= h[i]) r[i] = r[r[i] + 1]; } ll ans = 0; for(int i = 1; i <= n; i++) { ans = max( ans, ans ); } } ----------------------------------------------------------------------------------------------------------------------------------------------------- 下面来看看第二种方法:单调栈.单调栈主要思想是维护每个元素能向左扩展最多多少?一个元素进入栈之前总要先处理一下栈顶的元素(看看是不是可以扩展到当前元素),处理完后入栈,wap前端外包一旦入栈则说明这个元素的左扩展已确定;同理web前端制作,被扩展的栈顶元素出栈表示右扩展确定. 那么我们每读入一个新矩形高度,web前端制作我们先确定此时左扩展最大长度承接网页制作,b) a > b ? a : b #define N 100005 int q[N]={-1},w[N]; //w记录的是从这个点开始,web切图报价之前有几个高度大于等于此高度. int main() { int n,&n),&h); else h = 0; if(h > q[top]) q[++top] = h ,(cnt+w[top])*q[top] ); cnt += w[top--]; } q[++top] = h; w[top] = cnt+1; } } printf("%I64d\n",ans); } return 0; } 嘉神出的周赛真不是盖得.积极备战大连.

点击次数:4062
作者:
web前端行业资讯
Web new NewsList
微软发布WindowsServerBuild17074更新 ,,2018年01月18日凭借一个AI小功能,这款Google应用冲上苹果AppStore榜首 ,,2018年01月18日百度数据可视化实验室正式成立,发布深度学习可视化平台VisualDL ,,2018年01月18日OpenAI开源最新工具包,模型增大10倍只需额外增加20%计算时间 ,,2018年01月18日百度手机输入法8.0正式发布:支持多人语音速记 ,,2018年01月18日CSDN宣布收购TinyMind团队并升级为AI社区 ,,2018年01月18日甲骨文发布补丁修复英特尔芯片漏洞造成的问题 ,,2018年01月18日权威!官方发布CPU熔断和幽灵漏洞防范指引:附补丁下载 ,,2018年01月18日Oracle宣布新的JavaChampions ,,2018年01月18日Fedora28壁纸征集活动现已开幕:将持续至2月13日 ,,2018年01月18日苹果WebKit团队发布Speedometer2.0网页响应测试工具 ,,2018年01月18日百度输入法8.0后天发布:全感官AI输入 ,,2018年01月18日腾讯和乐高合作:共同研发智能玩具、游戏 ,,2018年01月18日HomePod上市日益临近智能音箱市场吸引力越来越大 ,,2018年01月18日英特尔公布修补漏洞后PC性能数据:8代CPU影响最小 ,,2018年01月18日云存储公司Dropbox秘密提交IPO申请估值超百亿美元 ,,2018年01月18日iPod之父:防手机上瘾无技术难度苹果谷歌应承担责任 ,,2018年01月18日芯片不安全英特尔云客户考虑转用AMD等对手处理器 ,,2018年01月18日2018年Java展望 ,,2018年01月18日区块链有多火?快播流量矿石遭20多万人疯抢 ,,2018年01月18日Intel搞定神经拟态芯片:模拟人类大脑、自主学习 ,,2018年01月18日阿里巴巴发布IoTConnect开放连接协议,盼推动语音互动入口普及 ,,2018年01月18日区块链火了,全球大佬们怎么看? ,,2018年01月18日Facebook正测试新功能主推本地新闻资讯 ,,2018年01月18日在GooglePlay中发现使用Kotlin开发的安卓恶意软件 ,,2018年01月18日VisualStudio201715.6预览版本2,增加新功能 ,,2018年01月18日百度陆奇:AI是5G最好的加速器 ,,2018年01月18日PinterestCEO:不同于谷歌和Facebook,我们走了第三条路 ,,2018年01月18日腾讯加码区块链项目已悄然注册“以太锁”商标 ,,2018年01月18日3D打印脑组织?科学家正在向这一目标正在前进 ,,2018年01月18日在iOS8.0之后的UIAlertView和UIActionSheet的新写法 【Web前端】2015年03月16日Android源码之ListView的适配器模式 【移动开发】2015年02月28日【iOS开发】Foundation框架的总结【互联网】2015年03月17日modernizr框架之表单验证 【数据库】2015年05月18日【翻译自mos文章】在不同ausize的asmdiskgroup之间movedatafile【综合】2015年05月07日java获取数据库连接的实现代码2014年01月30日PHP的Web应用框架CakePHP2.0发布 ,,2016年06月29日PostgreSQL的存储过程初探 【编程语言】2015年01月19日【iOS开发系列】XIBIBOutletsusestrongorweak? 【综合】2015年07月23日为BananaPI安装ubuntu-core-14最小核心 【综合】2014年11月10日android实现socket通信【编程语言】2015年05月27日【公开课:Java开源框架服务及CEP深入剖析】直播QQ群:228977971【综合】2015年08月05日AndroidActivity间动画跳转【Web前端】2014年11月04日3.1.内核体系结构 【移动开发】2015年07月21日iOS_引入代码块的步骤 【系统运维】2015年06月05日一套策划正确的网页配色方案2014年01月28日Android应用按返回键异常退出的问题【Web前端】2015年04月02日MVC和三层架构的比较【综合】2014年12月10日Java高手真经_编程基础卷——读书笔记(7)——Eclipse命名小知识 【移动开发】2015年03月11日C语言二维数组的处理实例2014年01月30日Data语意学【编程语言】2015年07月14日基于lucene的案例开发:IndexSearcher中检索方法 【综合】2015年01月29日Discuz!X1社区平台:设置导航栏的详细属性2014年01月28日CSSOverflow属性详解2014年01月28日Swift与Objective-c语法参照 【云计算】2015年04月27日86.LotusScript中的数组函数 【综合】2014年12月18日500OOPS:cannotchangedirectory:root 【编程语言】2015年08月16日如何配置java环境 【编程语言】2015年01月12日TQ2440学习笔记——2、Win7PC与虚拟机Ubuntu互通ping的网络设置 【移动开发】2015年08月14日Java基础:RTTI与反射【移动开发】2015年07月01日
我们保证
We guarantee
> psd效果文件手工切图,保证图片效果最好体积最小利于传输
> 100%手写的HTML(DIV+CSS)编码,绝对符合W3C标准
> 代码精简、css沉余量小、搜索引擎扫描迅速,网页打开快捷
> 应用Css Sprite能够减少HTTP请求数,提高网页性能
> 跨浏览器兼容(IE6、7、8、9,Firefox火狐,Chrome谷歌)