Codeforces Global Round 9 |
---|
Закончено |
У Madeline есть массив $$$a$$$ состоящий из $$$n$$$ целых чисел. Пара $$$(u, v)$$$ образует инверсию в массиве $$$a$$$ если
Madeline только что обнаружила магический листочек, который позволяет ей написать два индекса $$$u$$$ и $$$v$$$ и поменять местами значения $$$a_u$$$ и $$$a_v$$$. Будучи скучающим, она решила написать список пар $$$(u_i, v_i)$$$ со следующими условиями:
Первая строка ввода содержит одно целое число $$$n$$$ ($$$1 \le n \le 1000$$$) — длину массива.
Следующая строка содержит $$$n$$$ целых чисел $$$a_1,a_2,...,a_n$$$ $$$(1 \le a_i \le 10^9)$$$ — элементы массива.
Выведите -1 если нет подходящего списка. В противном случае выведите $$$m$$$ ($$$0 \le m \le \dfrac{n(n-1)}{2}$$$) — количество пар в списке.
$$$i$$$-я из следующих $$$m$$$ строк должна состоять из двух целых чисел $$$u_i, v_i$$$ ($$$1 \le u_i < v_i\le n$$$).
Если есть несколько решений, вы можете найти любое из них.
3 3 1 2
2 1 3 1 2
4 1 8 1 6
2 2 4 2 3
5 1 1 1 2 2
0
В первом примере массив будет изменен следующим образом $$$[3,1,2] \rightarrow [2,1,3] \rightarrow [1,2,3]$$$.
Во втором примере $$$[1,8,1,6] \rightarrow [1,6,1,8] \rightarrow [1,1,6,8]$$$.
В третем примере массив уже отсортирован.
Название |
---|