Упорядоченные списки

Напишите функцию, которая будет принимать список чисел и определять, расположены они строго по убыванию (decreasing), строго по возрастанию (increasing), либо не упорядочены (neither).

Примеры

check([1, 2, 3]) ➞ "increasing"
check([3, 2, 1]) ➞ "decreasing"
check([1, 2, 1]) ➞ "neither"
check([1, 1, 2]) ➞ "neither"

Примечания:

  • В последнем примере список не считается упорядоченным по возрастанию, потому что единица под индексом 1 не больше, чем единица под индексом 0.
  • Передаваемые списки будут содержать минимум 2 числа.

Варианты решения

def check(lst):
    if sorted(set(lst)) == lst:
        return 'increasing'
    if sorted(set(lst), reverse=True) == lst:
        return 'decreasing'
    return 'neither'
def check(lst):
    if len(set(lst)) < len(lst):
        return 'neither'
    return 'increasing' if lst == sorted(lst) else 'decreasing'

Прокрутить вверх