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
aW1wb3J0IHJhbmRvbQoKZGVmIG9yZGVyZWQobCwgaWR4KToKICAgIHJldHVybiAxIGlmIChsW2lkeF0+PWxbaWR4LTFdKSBlbHNlIDAKCm4gPSA2CmwgPSBbLTFdCnN1bW0gPSAxCmZvciBpIGluIHJhbmdlKG4pOgogICAgbC5hcHBlbmQocmFuZG9tLnJhbmRpbnQoMSwxMDApKSAj0YHQuNC80YPQu9C40YDRg9C10Lwg0LLQstC+0LQg0YfQuNGB0LXQuwogICAgc3VtbSArPSBvcmRlcmVkKGwsIC0xKQpsLmFwcGVuZCgxMDAwMDAwMDAxKQpwcmludChsLCBzdW1tKQoKd2hpbGUgVHJ1ZToKICAgIGlmIHN1bW0gPT0gbisxOgogICAgICAgIHByaW50KGwsIHN1bW0pCiAgICAgICAgYnJlYWsKICAgIHggPSByYW5kb20ucmFuZGludCgxLG4pICAj0YHQuNC80YPQu9C40YDRg9C10Lwg0LLQstC+0LQg0LjQvdC00LXQutGB0L7QsiDQtNC70Y8g0L7QsdC80LXQvdCwCiAgICB5ID0gcmFuZG9tLnJhbmRpbnQoMSxuKQogICAgd2hpbGUgeSA9PSB4OgogICAgICAgIHkgPSByYW5kb20ucmFuZGludCgxLG4pCgogICAgaWYgYWJzKHggLSB5KSA9PSAxOgogICAgICAgIGxhc3RzdW0gPSBvcmRlcmVkKGwsbWluKHgseSkpICsgb3JkZXJlZChsLG1heCh4LHkpKSArIG9yZGVyZWQobCxtYXgoeCx5KSsxKQogICAgZWxzZToKICAgICAgICBsYXN0c3VtID0gb3JkZXJlZChsLHgpICsgb3JkZXJlZChsLHgrMSkgKyBvcmRlcmVkKGwseSkgKyBvcmRlcmVkKGwseSsxKQogICAgbFt4XSwgbFt5XSA9IGxbeV0sIGxbeF0KICAgIGlmIGFicyh4IC0geSkgPT0gMToKICAgICAgICBuZXdzdW0gPSBvcmRlcmVkKGwsbWluKHgseSkpICsgb3JkZXJlZChsLG1heCh4LHkpKSArIG9yZGVyZWQobCxtYXgoeCx5KSsxKQogICAgZWxzZToKICAgICAgICBuZXdzdW0gPSBvcmRlcmVkKGwseCkgKyBvcmRlcmVkKGwseCsxKSArIG9yZGVyZWQobCx5KSArIG9yZGVyZWQobCx5KzEpCiAgICBzdW1tICs9IG5ld3N1bSAtIGxhc3RzdW0=
([-1, 75, 66, 39, 70, 37, 31, 1000000001], 3)
([-1, 31, 37, 39, 66, 70, 75, 1000000001], 7)