DEV Community

Abhishek Chaudhary
Abhishek Chaudhary

Posted on

Monotonic Array

An array is monotonic if it is either monotone increasing or monotone decreasing.

An array nums is monotone increasing if for all i <= j, nums[i] <= nums[j]. An array nums is monotone decreasing if for all i <= j, nums[i] >= nums[j].

Given an integer array nums, return true if the given array is monotonic, or false otherwise.

Example 1:

Input: nums = [1,2,2,3]
Output: true

Example 2:

Input: nums = [6,5,4,4]
Output: true

Example 3:

Input: nums = [1,3,2]
Output: false

Constraints:

  • 1 <= nums.length <= 105
  • -105 <= nums[i] <= 105

SOLUTION:

class Solution:
    def isMonotonic(self, nums: List[int]) -> bool:
        n = len(nums)
        grctr = 0
        lsctr = 0
        for i in range(1, n):
            if nums[i] >= nums[i - 1]:
                grctr += 1
            if nums[i] <= nums[i - 1]:
                lsctr += 1
        return grctr == 0 or grctr == n - 1 or lsctr == 0 or lsctr == n - 1
Enter fullscreen mode Exit fullscreen mode

Top comments (0)