1732. Find the Highest Altitude #
Problem #
There is a biker going on a road trip. The road trip consists of n + 1 points at different altitudes. The biker starts his trip on point 0 with altitude equal 0.
You are given an integer array gain of length n where gain[i] is the net gain in altitude between points i and i + 1 for all (0 <= i < n). Return the highest altitude of a point.
Example 1:
Input: gain = [-5,1,5,0,-7]
Output: 1
Explanation: The altitudes are [0,-5,-4,1,1,-6]. The highest is 1.
Example 2:
Input: gain = [-4,-3,-2,-1,4,3,2]
Output: 0
Explanation: The altitudes are [0,-4,-7,-9,-10,-6,-3,-1]. The highest is 0.
Constraints:
n == gain.length1 <= n <= 100100 <= gain[i] <= 100
Problem Summary #
There is a biker who plans to go on a road trip. The route consists of a total of n + 1 points at different altitudes. The biker starts at point 0 with an altitude of 0. You are given an integer array gain of length n, where gain[i] is the net altitude difference between point i and point i + 1 (0 <= i < n). Return the altitude of the highest point.
Solution Approach #
- Simple problem. Iterate through the array, reconstructing each altitude point starting from the first altitude point, and dynamically record the maximum height. After the loop ends, output the maximum height.
Code #
package leetcode
func largestAltitude(gain []int) int {
max, height := 0, 0
for _, g := range gain {
height += g
if height > max {
max = height
}
}
return max
}