Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬에서 한 지점의 가장 높은 고도를 찾는 프로그램

<시간/>

도로 여행을 가려고 하는 자전거 타는 사람이 있다고 가정해 봅시다. 다른 고도에서의 로드 트립에는 n개의 다른 지점이 있습니다. 바이커는 고도가 0인 지점 0에서 여행을 시작합니다. n개의 요소가 있는 게인이라는 시퀀스가 ​​있는 경우 Gain[i]는 지점 i와 i + 1 사이의 고도 순 이득입니다(0 <=i

따라서 입력이 게인 =[-4,2,6,1,-6]과 같으면 고도가 [0,-4,-2,4,5,-1]이기 때문에 출력은 5가 됩니다. , 따라서 최대값은 5입니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 최대 :=0

  • run_alt :=0

  • 이득의 각 델타에 대해 수행

    • run_alt :=run_alt + 델타

    • maximum :=maximum 및 run_alt의 최대값

  • 최대 반환

예제(파이썬)

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

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))

입력

[-4,2,6,1,-6]

출력

5