Ludwig are o permutare a mulțimii și o masă pe care putea așeza numerele din permutare. Ludwig ia primul număr din permutare, adică , și îl așează pe masă. Al doilea număr, , îl pune fie în stânga lui , fie în dreapta lui . La fiecare pas, dacă s-au așezat pe masă deja numerele , atunci numărul este pus fie în stânga numerelor deja așezate, fie în dreapta lor.
Cerinţă
Ajutați-l pe Ludwig să determine o modalitate de așezare a întregii permutări pe masă astfel încât în final să se obțină o nouă permutare care are un număr minim de inversiuni.
Date de intrare
Fişierul inversiuni.in
conţine pe prima linie numărul natural , iar pe linia a doua, separate prin câte un spațiu, numerele .
Date de ieșire
Fişierul inversiuni.out
conţine un singur număr natural reprezentând numărul minim de inversiuni care se pot obține.
Restricții și precizări
- O inversiune în permutare este o pereche de indici cu și . De exemplu, permutarea are ca inversiune perechea de indici pentru că ; o altă inversiune este perechea de indici pentru că .
Exemplul 1
inversiuni.in
4
2 1 3 4
inversiuni.out
0
Explicație
Se așează elementele pe masă astfel:
( este așezat la stânga)
( este așezat la dreapta)
( este așezat la dreapta)
Se obține permutarea identică, adică zero inversiuni.
Exemplul 2
inversiuni.in
4
2 1 4 3
inversiuni.out
1
Explicație
Se așează elementele pe masă astfel:
( este așezat la stânga)
( este așezat la dreapta)
( este așezat la dreapta)
Se obține o permutare care are o inversiune.