LeetCode1732. 找到最高海拔

news/2024/12/23 1:27:09/

题干

有一个自行车手打算进行一场公路骑行,这条路线总共由 n + 1 个不同海拔的点组成。自行车手从海拔为 0 的点 0 开始骑行。

给你一个长度为 n 的整数数组 gain ,其中 gain[i] 是点 i 和点 i + 1 的 净海拔高度差0 <= i < n)。请你返回 最高点的海拔 。

示例1

输入:gain = [-5,1,5,0,-7]
输出:1
解释:海拔高度依次为 [0,-5,-4,1,1,-6] 。最高海拔为 1 。

示例2

输入:gain = [-4,-3,-2,-1,4,3,2]
输出:0
解释:海拔高度依次为 [0,-4,-7,-9,-10,-6,-3,-1] 。最高海拔为 0 。

提示

  • n == gain.length
  • 1 <= n <= 100
  • -100 <= gain[i] <= 100

解题思路

        这道题简单明了,可以勉强说成是一道前缀和的算法题。从海拔为0出发,数组内的每个元素表示下一个地方和所在地的海拔差,求经过的最高点的海拔。只需要将现在的海拔加上海拔差即是下一个地方的海拔,利用变量max不断比较,找到最高海拔即可。

AC代码

class Solution {public int largestAltitude(int[] gain) {int high = 0;int max = high;for(int i=0;i<gain.length;i++){high = high + gain[i];max = Math.max(high,max);}return max;}
}


http://www.ppmy.cn/news/1010372.html

相关文章

MySQL DCL 操作

文章目录 1.新建用户2.删除用户3.用户授权4.撤销用户权限5.查看用户权限6.修改用户密码7.权限类型参考文献 1.新建用户 连接到 MySQL 服务器后&#xff0c;管理员或特权用户可以使用 CREATE USER 语句创建新用户。 CREATE USER usernamehost IDENTIFIED BY password;# 示例 C…

2023华为OD机试真题Java实现【寻找最大价值的矿堆/深度优先搜索】

前言 本题使用Java实现,如果需要Python代码,请点击以下链接 点我 题目 我们规定,0表示空地,1表示银矿、2表示金矿,矿堆表示由相邻的金矿或银矿连接形成的地图。 银矿价值是1 ,金矿价值是2 ,你的目标是找出地图中最大价值的矿堆,并且输出该矿堆的价值 示例1 输入:…

微信云托管(本地调试)⑥:nginx、vue刷新404问题

一、nginx默认路径 1.1、默认配置文件路径&#xff1a;/etc/nginx/nginx.conf 1.2、默认资源路径&#xff1a;/usr/share/nginx/html/index.html 二、修改nginx.conf配置 &#xff08;注意配置中的&#xff1a;include /etc/nginx/conf.d/*.conf; 里面包了一个server配置文件…

规划模型Matlab代码

文章目录 数学规划定义一般形式分类 1.线性规划(linear programming)2.非线性规划(nonlinear programming)3. 整数规划(integer programming)4. 0-1规划(0-1 programming)5. 最大最小化模型6. 多目标规划模型7.敏感性分析&#xff08;对权重&#xff09;[例题] 数学规划定义 数…

原型链污染

文章目录 1. javascript 原型链2. 原型链变量的搜索3. prototype 原型链污染4. 原型链污染例题4.1 题1&#xff1a;4.2.题2&#xff1a; 1. javascript 原型链 js在ECS6之前没有类的概念&#xff0c;之前的类都是用funtion来声明的。如下 可以看到b在实例化为test对象以后&…

【SpringBoot面试题整理-超级有效】

文章目录 1.SpringBoot如何解决跨域问题&#xff1f;2.为什么要用Spring Boot&#xff1f;3. Spring Boot的约定优于配置&#xff0c;你的理解是什么&#xff1f;4. SpringBoot有哪些优点&#xff1f;5. Spring Boot中自动装配机制的原理&#xff1f;6.SpringBoot支持哪些日志框…

Kubernetes(K8s)从入门到精通系列之十五:利用 kubeadm 创建高可用K8s集群

Kubernetes K8s从入门到精通系列之十五:利用 kubeadm 创建高可用K8s集群 一、kubeadm、kubelet和kubectl的区别二、准备工作1.堆叠Stacked etcd拓扑2.外部etcd拓扑三、容器镜像四、命令行五、为 kube-apiserver 创建负载均衡器六、使用堆控制平面和 etcd 节点七、托管节点标签…

tcpdump网络抓包工具的使用

tcpdump 是一款用在linux系统上的网络抓包工具 1、 基本语法 tcpdump 的常用参数如下&#xff1a; tcpdump -i eth0 -nn -s0 -v port 80-i : 选择要捕获的接口&#xff0c;通常是以太网卡或无线网卡&#xff0c;也可以是 vlan 或其他特殊接口。如果该系统上只有一个网络接口&…