[LeetCode&Python] Problem 896. Monotonic Array

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

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

Return true if and only if the given array A is monotonic.

 

Example 1:

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

Example 2:

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

Example 3:

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

Example 4:

Input: [1,2,4,5]
Output: true

Example 5:

Input: [1,1,1]
Output: true

 

Note:

  1. 1 <= A.length <= 50000
  2. -100000 <= A[i] <= 100000
 
class Solution(object):
    def isMonotonic(self, A):
        """
        :type A: List[int]
        :rtype: bool
        """
        n=len(A)
        if n==1:
            return True
        elif A[0]<A[1]:
            for i in range(n-1):
                if A[i]>A[i+1]:
                    return False
            return True
        elif A[0]==A[1]:
            ma=max(A)
            if ma==A[0]:
                for i in range(n-1):
                    if A[i]<A[i+1]:
                        return False
                return True
            else:
                for i in range(n-1):
                    if A[i]>A[i+1]:
                        return False
                return True
        else:
            for i in range(n-1):
                if A[i]<A[i+1]:
                    return False
            return True
            

  

posted on 2018-10-26 13:55  chiyeung  阅读(183)  评论(0)    收藏  举报

导航