zoukankan      html  css  js  c++  java
  • [LeetCode]Container With Most Water

    题目描述:

    Given n non-negative integers a1a2, ..., an, where each represents a point at coordinate (iai). n vertical lines are drawn such that the two endpoints of line i is at (iai) and (i, 0). Find two lines, which together with x-axis forms a container, such that the container contains the most water.

    Note: You may not slant the container.

    解题方案:

    遍历所有方案,找到最大值。下面是该题的代码:

     1 class Solution {
     2 public:
     3     int maxArea(vector<int> &height) {
     4         int maxAre = 0;
     5         int area = 0;
     6         int len = height.size();
     7         int left = 0;
     8         int right = len -1;
     9         while(left < right){
    10             int high = height[left] > height[right]? height[right]:height[left];
    11             area = high * (right - left);
    12             if(area > maxAre){
    13                 maxAre = area;
    14             }else if(height[left] > height[right]){
    15                 right--;
    16             }else {
    17                 left++;
    18             }
    19             
    20         }
    21         return maxAre;
    22     }
    23 };
  • 相关阅读:
    预处理命令
    函数
    结构体
    字符数组
    数组
    文件
    用 typedef 定义类型
    枚举类型
    联合
    位运算
  • 原文地址:https://www.cnblogs.com/skycore/p/4001119.html
Copyright © 2011-2022 走看看