hdu1506 Largest Rectangle in a Histogram
来源:互联网 发布:js 原生排序 编辑:程序博客网 时间:2024/06/02 05:29
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1506
对于每一块木板,Area=height[i]*(k-j+1) 其中,j<=x<=k,height[x]>=height[i];
#include <stdio.h>#define MAXN 100005_int64 height[MAXN],left[MAXN],right[MAXN];int main(){ _int64 n,i;_int64 area,ans;while(scanf("%I64d",&n)&&n){for(i=1;i<=n;++i){scanf("%I64d",&height[i]);left[i]=i;//表示比height[i]大的数连续的最左边的位置 right[i]=i;//表示比height[i]大的数连续的最右边的位置 }height[0]=height[1+n]=-1;for(i=1;i<=n;++i){while(height[left[i]-1]>=height[i])left[i]=left[left[i]-1];}for(i=n;i>=1;--i){while(height[right[i]+1]>=height[i])right[i]=right[right[i]+1];}ans=0;for(i=1;i<=n;++i){area=(right[i]-left[i]+1)*height[i];if(ans<area)ans=area;}printf("%I64d\n",ans);}return 0;}
- hdu1506 & pku2559 Largest Rectangle in a Histogram
- 【DP】 hdu1506 Largest Rectangle in a Histogram
- hdu1506 Largest Rectangle in a Histogram
- HDU1506--Largest Rectangle in a Histogram
- hdu1506 Largest Rectangle in a Histogram
- HDU1506 ( Largest Rectangle in a Histogram ) [dp]
- HDU1506 Largest Rectangle in a Histogram
- hdu1506 Largest Rectangle in a Histogram (DP)
- [HDU1506]Largest Rectangle in a Histogram[dp]
- HDU1506 Largest Rectangle in a Histogram
- hdu1506 Largest Rectangle in a Histogram
- ZOJ1985 POJ2259 HDU1506 Largest Rectangle in a Histogram
- poj2559 & zoj1985 &hdu1506 Largest Rectangle in a Histogram(笛卡尔树)
- HDU1506--Largest Rectangle in a Histogram (动态规划)
- HDU1506 Largest Rectangle in a Histogram (动规)
- hdu1506——Largest Rectangle in a Histogram
- hdu1506 Largest Rectangle in a Histogram (单调栈)
- zoj1985 hdu1506 Largest Rectangle in a Histogram (动态规划)
- 在myeclipse中, 如何还原默认窗口?
- vb.net中将DataGridView与数据源绑定
- zoj 1967 Fiber Network
- HDU 1203 贪心或者DP
- hdu 4666 Hyperspace
- hdu1506 Largest Rectangle in a Histogram
- 工作中的准则--体会
- PHP实现把数字ID转字母ID
- 日期计算
- 关于Java的界面编写
- 模块式编译的Makefile
- spring原理
- read a line with arbitrary length using fgets
- 杭电 取石问题