import random

def ordered(l, idx):
    return 1 if (l[idx]>=l[idx-1]) else 0

n = 6
l = [-1]
summ = 1
for i in range(n):
    l.append(random.randint(1,100)) #симулируем ввод чисел
    summ += ordered(l, -1)
l.append(1000000001)
print(l, summ)

while True:
    if summ == n+1:
        print(l, summ)
        break
    x = random.randint(1,n)  #симулируем ввод индексов для обмена
    y = random.randint(1,n)
    while y == x:
        y = random.randint(1,n)

    if abs(x - y) == 1:
        lastsum = ordered(l,min(x,y)) + ordered(l,max(x,y)) + ordered(l,max(x,y)+1)
    else:
        lastsum = ordered(l,x) + ordered(l,x+1) + ordered(l,y) + ordered(l,y+1)
    l[x], l[y] = l[y], l[x]
    if abs(x - y) == 1:
        newsum = ordered(l,min(x,y)) + ordered(l,max(x,y)) + ordered(l,max(x,y)+1)
    else:
        newsum = ordered(l,x) + ordered(l,x+1) + ordered(l,y) + ordered(l,y+1)
    summ += newsum - lastsum