//力扣第11题 盛最多水的容器
//给定一个长度为 n 的整数数组 height 。
//有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。
//找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
//返回容器可以储存的最大水量。
//说明:你不能倾斜容器。
//示例 1:
//输入:[1,8,6,2,5,4,8,3,7]
//输出:49
//解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。
//示例 2:
//输入:height = [1,1]
//输出:1
#include <stdio.h>
#include <stdlib.h>
//找maxArea
//暴力
//maxs:最大面积 minn最小的数 s面积
int maxArea(int* a, int size){
int i, j, maxs=0, minn, s;
for(i = 0; i < size; i++)
{
for(j = i+1; j < size; j++)
{
minn = (a[i] < a[j] )? a[i] : a[j];
s = minn * (j-i);
maxs = (maxs > s) ? maxs : s;
}
}
return maxs;
}
int main(){
int i, size;
printf("输入数组长度:");
scanf("%d",&size);
int a[size];
printf("输入数组内容(一个数据一个逗号):");
for(i = 0; i<size; i++){
scanf("%d,", &a[i] );
}
printf("%d",maxArea(a,size));
return 0;
}