Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมหาความสูงสูงสุดในการเดินทาง (Highest Altitude) ใน Python

โจทย์

นักปั่นจักรยานเริ่มที่ความสูง 0 มี Array gain ที่ gain[i] = ความสูงเพิ่ม/ลดระหว่างจุด i และ i+1 หาความสูงสูงสุดที่ถึง

ตัวอย่าง: gain = [-4,2,6,1,-6] → ความสูง: [0,-4,-2,4,5,-1] → Max = 5

อัลกอริธึม

  1. สะสม Running Altitude
  2. ติดตาม Max ทุกขั้นตอน

โค้ด Python


def solve(gain):
    maximum = 0
    run_alt = 0
    for delta in gain:
        run_alt += delta
        maximum = max(maximum, run_alt)
    return maximum

gain = [-4, 2, 6, 1, -6]
print(solve(gain))  # Output: 5

Input / Output

Input:  [-4,2,6,1,-6]
Output: 5