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

파이썬에서 방향 바꾸기

<시간/>

num이라는 숫자 목록이 있다고 가정하고 목록이 양수에서 음수 또는 음수에서 양수 기울기로 변경되는 횟수를 찾아야 합니다.

따라서 입력이 [2, 4, 10, 18, 6, 11, 13]과 같으면 10에서 방향을 변경하므로 출력은 2가 됩니다(양수에서 음수 ), 그리고 6(음수-양수)에서.

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

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

  • 범위 1에서 숫자 - 1까지의 i에 대해 수행

    • nums[i-1] nums[i+1] 또는 nums[i-1]> nums[i]

      • 개수 :=개수 + 1

  • 반환 횟수

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

class Solution:
   def solve(self, nums):
      count = 0
      for i in range(1, len(nums) - 1):
         if nums[i - 1] < nums[i] > nums[i + 1] or nums[i - 1] > nums[i] < nums[i + 1]:
            count += 1
      return count

ob = Solution()
print(ob.solve([2, 4, 10, 18, 6, 11, 13]))

입력

[2, 4, 10, 18, 6, 11, 13]

출력

2