hdu 1506 Largest Rectangle in a Histogram DP 单调队列
来源:互联网 发布:一朝成名天下知 编辑:程序博客网 时间:2024/05/17 01:46
//考察点:动态规划,又有说是单调队列(还不了解)//思路:为每一个点记录可以左最远延伸到的位置,和向右最远延伸到的位置//但是不能暴搜,会超时的。具体见下面的代码//提交情况:1.TLE 多次,原因:h[0]=h[n+1]设置成了0,会出现问题//提交情况:2.WA 多次,原因:必须要将数组改成__int64类型的才能通过//收获:使用l[i]=l[l[i]-1]这样的语句可以使滑动速度加快//AC code#include<stdio.h>int l[100005];int r[100005];__int64 h[100005];int n;int main(){while(scanf("%d",&n)&&n){int i;for(i=1;i<=n;i++){scanf("%I64d",&h[i]);l[i]=r[i]=i;}h[0]=h[n+1]=-1;for(i=1;i<=n;i++){while(h[l[i]-1]>=h[i]){l[i]=l[l[i]-1];}}for(i=n;i>=1;i--){while(h[r[i]+1]>=h[i])r[i]=r[r[i]+1];}__int64 Max=-1;__int64 tmp;for(i=1;i<=n;i++){tmp=h[i]*(r[i]-l[i]+1);if(tmp>Max)Max=tmp;}printf("%I64d\n",Max);}return 0;}
- hdu 1506 Largest Rectangle in a Histogram DP 单调队列
- hdu 1506 Largest Rectangle in a Histogram 单调队列
- HDU 1506 Largest Rectangle in a Histogram(单调队列)
- !HDU 1506 Largest Rectangle in a Histogram-dp|单调队列-(dp降低时间复杂度)
- Largest Rectangle in a Histogram (单调队列||dp)
- NYOJ-258/POJ-2559/HDU-1506 Largest Rectangle in a Histogram,最大长方形,dp或者单调队列!
- HDU 1506 Largest Rectangle in a Histogram(单调栈)
- hdu 1506 Largest Rectangle in a Histogram(单调栈)
- HDU 1506 Largest Rectangle in a Histogram 单调栈
- hdu 1506 Largest Rectangle in a Histogram 单调栈
- HDU 1506 Largest Rectangle in a Histogram(单调栈)
- HDU 1506 Largest Rectangle in a Histogram (单调栈)
- HDU-1506 Largest Rectangle in a Histogram(单调栈)
- HDU 1506 && POJ 2559 Largest Rectangle in a Histogram (单调队列)
- hdu 1506 Largest Rectangle in a Histogram(单调栈||dp)
- HDU 1506 Largest Rectangle in a Histogram(DP·单调栈)
- hdu - 1506 - Largest Rectangle in a Histogram(dp / 单调栈)
- hdu 1506 (dp) Largest Rectangle in a Histogram
- OpenGL Frame Buffer Object
- objective-C中@class和#import的区别
- 连接VPN问题
- linux常用命令杂谈
- 16周任务二 salary 文件的操作
- hdu 1506 Largest Rectangle in a Histogram DP 单调队列
- 使用Python将文本转为图片
- 错误信息
- 用ImageMagick/MagickWand在图片上添加文字
- 16周任务三 score 学生类的文件操作
- jquery获取页面上复选框的值
- java线程系列---线程范围内共享变量(一)
- Bash ------ Keyword Variable Memo
- 寒冰老师的力作——vsFTP服务器·磁盘配额管理