Sortiranje Okretanjem
| vreme | memorija | ulaz | izlaz |
|---|---|---|---|
| 1 s | 1000 Mb | standardni izlaz | standardni ulaz |
Dat je niz celih brojeva A. Potrebno je sortirati niz A u neopadajuci poredak koristeci sledecu operaciju: za data dva indeksa (i, j), okreni deo niza A[i], A[i+1], ..., A[j].
Sto znaci da ako na niz A[1], A[2], ..., A[i], A[i+1], ..., A[j-1], A[j], ..., A[N], primenimo ovu operaciju sa indeksima (i, j), dobijamo niz A[1], A[2], ..., A[i-1], A[j], A[j-1], ..., A[i+1], A[i], A[j+1], ..., A[N].
Ova operacija kosta j - i + 1. Cena programa je zbir cena operacija koje program koristi. Napisati program cija je cena manja od 2 000 000.
Prvi red standardnog ulaza sadrzi prirodan broj N (1 <= N <= 10 000) koji predstavlja broj elemenata niza. Naredni red sadrzi N prirodnih brojeva, razdvojenih jednim znakom razmaka, koji predstavljaju elemente niza. (-10^9 <= A[i] <= 10^9)
U prvom redu standardnog izlaza ispisati broj operacija koji vas program koristi, a zatim u svakog sledem redu redom ispisati operacije koje vas program koristi.
5
1 -1 50 92 -55
4
1 5
2 4
3 5
4 5
Pogledajmo kako niz izgleda nakon svake operacije:
1 5 -> -55 92 50 -1 1
2 4 -> -55 -1 50 92 1
3 5 -> -55 -1 1 92 50
4 5 -> -55 -1 1 50 92
Ukupna cena ovog programa je 5 + 3 + 3 + 2 = 13
Morate biti ulogovani kako biste poslali zadatak na evaluaciju.