首页 > 编程语言 >11. 盛最多水的容器C++

11. 盛最多水的容器C++

时间:2024-02-22 21:14:35浏览次数:23  
标签:11 tem int max s1 C++ height 最多水

原本想o(n2)遍历的,结果超时了,果然没这么简单就解决。

class Solution {
public:
    int s(vector<int> height,int i,int j){
        int s1=min(height[i],height[j])*(j-i);
        return s1;
    }

    int maxArea(vector<int>& height) {
        int max=0,i=0,j=height.size()-1;
        int x=height[i],y=height[j];
        while(i!=j){
            int tem=s(height,i,j);
            if(tem>max){
                max=tem;
                x=height[i];
                y=height[j];
            }
            if(height[i]<height[j]){
                i++;
                while(height[i] < x && i<j) i++;
            }else{
                j--;
                while(height[j] <y && i<j) j--;
            }
        }

        return max;
    }
};

结果:

标签:11,tem,int,max,s1,C++,height,最多水
From: https://www.cnblogs.com/llllmz/p/18028195

相关文章

  • 深入理解C++中的堆与栈:内存管理的关键区别与实例解析
     概述:C++中,堆和栈是两种不同的内存分配方式。栈自动分配、释放内存,适用于短生命周期变量;堆需要手动管理,适用于动态分配内存,但需要显式释放以防内存泄漏。通过清晰的示例源代码,演示了它们在变量生命周期、访问方式等方面的区别。C++中的堆(heap)和栈(stack)是两种内存分配和管理方......
  • Vue学习笔记11--事件
    示例一:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>Vue事件的基本使用</tit......
  • 博客11
    Windows提供了通过应用来间接控制硬件的方法,借助的是输入输出命令,IN/OUT这也是汇编语言的助记符,IRQ中断请求,在程序中有很大的价值,就像在处理文档时,突然来了个电话,而电话就是中断请求,但如果有多个中断请求的话,CPU也会为难,为此,在控制器和CPU中间加入了中断控制器IC来进行缓冲,DMA指......
  • Python笔记11——函数
    十一、函数函数的作用:提高模块化程度,提高代码重复利用率。11.1定义一个函数一般格式:def函数名(参数列表):函数体以def关键字开头,后接函数标识符名称和圆括号()。所需参数必须都在圆括号中声明。(默认参数值和参数名称是按函数声明中定义的顺序匹配起来的。)函数内容以......
  • 《程序是怎样跑起来的》第11章
    本章主要讲的是访问硬件的方法。在上章中,我们讲述了汇编语言,那么在汇编语言中用于外部数据进行输入输出的命令是什么呢?当然是in指令和out指令。i/o的全称是什么呢?当然是input/output(输入/输出)。那么这里又有些问题,不过这些问题也是清晰易懂的。用于区分外部设备的编号是I/O地址......
  • C++ 继承和派生
      ......
  • C++ 多态 超详细讲解
    C++多态超详细讲解多态概念引入多态字面意思就是多种形态。我们先来想一想在日常生活中的多态例子:买票时,成人买票全价,如果是学生那么半价,如果是军人,就可以优先买票。不同的人买票会有不同的实现方法,这就是多态。1、C++中多态的实现1.1多态的构成条件C++的多态必须满足两......
  • 微软:符合条件设备将自动更新至Win11 23H2!
    今天微软发布公告表示,目前依然停留在Windows1121H2和22H2,但符合升级条件的设备,将会自动更新至最新的23H2更新。微软在公告中表示,Windows1123H2更新已进入新的部署阶段,符合升级条件的Windows11设备自动升级到23H2。此次自动更新针对的是已达到或即将达到服务期限的Windows1......
  • C++ constexpr
    C++constexpr比如我有一个函数,返回10intget10(){return10;}我想拿去初始化数组大小intarraynum[get10()];编译器会报错,因为会说只能用常量去初始化,所以我们可以用constexpr,把函数改成常量表达式,这样编译器在编译阶段就知道了常量。再比如一个可变参函数模板,我想......
  • C++ STL 容器-string类型
    C++STL第一部分-容器STL的介绍C++的STL分为六大部分容器分为String容器例子1std::stringstr1,str2,str3,str4;str1.assign("abcd");//给str1赋值abcdstr2.assign("abcd",3);//获取abcd中的3个,从0到2str3.assign(str1);//获取str1//注意str3()和str3.a......