您当前的位置: 首页 > 

先求一个导

暂无认证

  • 0浏览

    0关注

    291博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

AcWing 131. 直方图中最大的矩形【单调栈】

先求一个导 发布时间:2022-01-27 11:46:27 ,浏览量:0

题目 题意: 给定n个高度为ai,宽度为1的矩形,求出其中最大面积的矩形。 思路: 先考虑暴力,枚举每个高度的矩形分别向左右扩展。时间复杂度不能接受。 发现如果有形如3 2这样的矩形排布,只需要记录下2即可。因为2决定了左侧矩形高度不能超过2,而且高度小于等于2的矩形在左侧都能接受。  因此,可以用单调栈维护一个高度的单调递增栈。 时间复杂度: O(n) 代码:

// Problem: 直方图中最大的矩形
// Contest: AcWing
// URL: https://www.acwing.com/problem/content/description/133/
// Memory Limit: 64 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define OldTomato ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr)
#define fir(i,a,b) for(int i=a;iT;
   // read(T);
   while(T--)
   {
   	 solve();
   }
   return 0;
}

关注
打赏
1662037414
查看更多评论
立即登录/注册

微信扫码登录

0.0377s