Rectangle
2024-10-06 20:42:27
题目描述
在 x 轴上有相互挨着的矩形, 这些矩形有一个边紧贴着 x 轴,现在给出每个矩形的长宽, 所有的矩形看作整体当作一个画布, 则可以在这个画布上画出的最大的矩形的面积是多少。(画出的矩形长和高平行于X,Y轴)
解答要求时间限制:3000ms, 内存限制:64MB
输入
每组第一个数N(0<=N<=20000)表示N个矩形。下面N行有两个数a(1 <= a <=1000),b(1 <= b<=1000)分别表示每个矩形的x轴长度和y轴长度。
输出
输出最大的面积。
#include <stdio.h> long dynamicCaculate(int size); long x_and_y[][] = {}; int main() {
int n;
scanf("%d", &n);
long i = ;
while (i < n) {
scanf("%d %d", &x_and_y[i][], &x_and_y[i][]);
i++;
}
long res = dynamicCaculate(n);
printf("%ld", res);
return ;
} //分包不包括下一个输入的矩形
long dynamicCaculate(int size) {
if (size == ) {
return ;
}
long res_1 = ;
for (int i = ; i < size; ++i) {
long tempArea = ;
int totalWidth = x_and_y[i][];
for (int j = i - ; j >= ; --j) {
if (x_and_y[j][] >= x_and_y[i][]) {
totalWidth += x_and_y[j][];
} else {
break;
}
}
for (int j = i + ; j < size; ++j) {
if (x_and_y[j][] >= x_and_y[i][]) {
totalWidth += x_and_y[j][];
} else {
break;
}
}
tempArea = totalWidth * x_and_y[i][];
res_1 = res_1 > tempArea ? res_1 : tempArea;
}
return res_1;
}
最新文章
- Xamarin教程索引页
- centos中yum安装mysql路径
- .Net 转战 Android 4.4 日常笔记(10)--PullToRefresh下拉刷新使用
- clipse在编写JSP时没有代码提示
- SpringMVC源码阅读(三)
- [转] webpack debug in webstorm
- WebGL是一种3D绘图标准,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起
- XML 树结构
- java系列--抽象类和接口
- C#仪器数据文件解析-XPS文件
- FAT32文件系统的存储组织结构(二)
- 【GO】【gdb】
- Linux第二节课学习笔记
- 51NOD 1185 威佐夫游戏 V2(威佐夫博弈)
- 通信——基于Xmpp协议实现的聊天室
- vue--v-model表单控件绑定
- C# WORD操作实现代码(转载)
- acceleration
- js td innerHTML
- How do I list subversion repository&#39;s ignore settings