问题标题: 酷町堂:4838 水桶接水 急急急!!!

0
0
已解决
张恩泽
张恩泽
高级天翼
高级天翼

4838   水桶接水经验值:0

题目描述 Description

给定n个整数a1,a2,…,an,表示有n个木板,ai表示第i个木板的长度。在坐标内画n条与x轴垂直的线,相邻两条线的距离为1,第i条线的长度为ai。我们需要在这n个木板中,选出其中的两个木板,使得它们与x轴共同构成的一个接水的容器,要知道一个容器能够接多少水,取决于最短的那个木板的长度,这个容器的接水量就是这两个木板中较短的那个木板的长度乘上两个木板之间的距离。我们要找出可以容纳最多的水的容器的容量。

输入描述 Input Description

输入两行
第一行一个整数n,表示n个木板(2<=n<=100)
第二行n个整数,表示n个木板具体的长度

输出描述 Output Description

输出一个数,表示构成容器的最大容量

样例输入 Sample Input

5 4 5 3 6 8

样例输出 Sample Output

16

各位大佬们快给个思路和核心代码啊,本蒟蒻面对这题已经无能为力!!

张恩泽在2020-08-15 23:22:53追加了内容

我突然后悔问这个问题了,因为我做出来了,啊,我的100酷町豆啊!!

算了,还是随机抽一个采纳吧


0
已采纳
被禁言 李秉轩
李秉轩
修练者
修练者
int n,a[110],ans;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    } 
    for(int i=1;i<=n;i++){
        for(int j=i+1;j<=n;j++){
            ans=max(ans,min(a[i],a[j])*(j-i));
        }

    }
    cout<<ans;

 

我要回答