A logical recursive function should be written that gets a list of integers and checks whether the members with equal indicators are arranged in descending order, and the members with odd indexes are sorted in ascending order.
To test the functionality, write an initial function that receives from the user the length of the list and then the end members, a basic function that receives from the user the length of the end members.
Order not by rotation if the error is repeated.
[2, 18, 3, 15, 3, 9, 7, 4]
alternately sorted
[2, 18, 3, 15, 3, 9, 7, 14]
not alternately sorted
def alternatively_sorted(in_list):
    if len(in_list) <= 2:
        # base case, 2 or less items are sorted
        return True
    else:
        if len(in_list) > 3 and in_list[3] > in_list[1]:
            # has next even, but even is not descending
            return False
        if in_list[2] < in_list[0]:
            # odd is not ascending
            return False
        return alternatively_sorted(in_list[2:])  # remove first 2 elements
if __name__ == '__main__':
    len_ = int(input("Enter length of list: "))
    l_in = input("Enter list elements separated by commas (2, 4, 5, 7, 10, ...): ")
    l_in = [int(x.strip()) for x in l_in.split(",")]  # split by comma and remove extra space around with strip()
    a = alternatively_sorted(l_in)
    if len_ != len(l_in):
        print("Lengths are incorrect!")
    else:
        # lengths are good
        print(len_, l_in, a)
        # test cases
        b = alternatively_sorted([2, 18, 3, 15, 3, 9, 7, 4])
        c = alternatively_sorted([2, 18, 3, 15, 3, 9, 7, 14])
        print(b, c)