概述
问题描述
题目描述
输入样例与输出样例
样例输入
6
3 1 6 5 2 3
样例输出
10
AC代码与算法思路
#include <stdio.h>
#include <vector>
using namespace std;
#define MaxSize 1010
int main()
{
int n, Height, MaxArea = 0;
int Rectangular[MaxSize];
int MaxAreaSet[MaxSize];
//读取n
scanf("%d", &n);
//输入长方形高度
for (int i = 0; i < n; ++i)
{
scanf("%d", &Height);
Rectangular[i] = Height;
}
for (int i = 0; i < n; ++i)
{
//初始高度为1*Height
MaxAreaSet[i] = Rectangular[i];
//记录当前最小高度:木桶效应
int MinHeight = Rectangular[i];
for (int j = i - 1; j >= 0; --j)
{
//更新当前最小高度
if (Rectangular[j] < MinHeight)
MinHeight = Rectangular[j];
//计算当前长方形面积
int TempArea = (i - j + 1) * MinHeight;
//更新到当前矩形的最大面积
if (TempArea > MaxAreaSet[i])
MaxAreaSet[i] = TempArea;
}
//更新最大面积
if (MaxAreaSet[i] > MaxArea)
MaxArea = MaxAreaSet[i];
}
//输出结果
printf("%dn",MaxArea);
return 0;
}
最后
以上就是重要香氛为你收集整理的CCF-CSP-201312-3:最大的矩形问题描述AC代码与算法思路的全部内容,希望文章能够帮你解决CCF-CSP-201312-3:最大的矩形问题描述AC代码与算法思路所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复