Castele

Time limit: 0.09s Memory limit: 64MB Input: castele.in Output: castele.out

Aflat pe plaja urbană din cartierul Cricozescu al orașului Jluc, Andrei participă la un concurs de construcții de castele de nisip. Fiecare concurent a construit deja un anumit număr de castele nn, însă organizatorii concursului au schimbat regulile în ultimul moment, astfel că, pentru a fi eligibili în etapa de jurizare, toate castelele concurenților trebuie să aibă exact aceeași înălțime hh, unde hh este înălțimea unui castel deja construit de Andrei. Pentru a uniformiza înălțimile, concurenții trebuie să efectueze un număr de operații asupra unui castel, iar în cadrul unei operații există două posibilități:

  • Fie se adaugă o lopată de nisip castelului curent - în acest caz, înâlțimea castelului crește cu 11cm;
  • Fie se înlătură o lopată de nisip din vârful castelului - în acest caz, înălțimea castelului scade cu 11cm.

Cerința

Având în vedere precizările făcute de organizatori la finalul concursului, Andrei ne cere să îl ajutăm să determine numărul minim de operații pe care el trebuie să le facă asupra castelelor sale astfel încât toate să aibă, în final, aceeași înălțime hh, hh fiind înălțimea inițială a unuia dintre castelele construite.

Date de intrare

Fișierul de intrare castele.in conține pe prima linie un număr natural nn, reprezentând numărul de castele pe care Andrei le are, iar pe a doua linie se află nn numere naturale, reprezentând înălțimile inițiale ale castelelor lui Andrei.

Date de ieșire

Fișierul de ieșire castele.out va conține pe singura linie numărul kk, reprezentând numărul minin de operații pe care Andrei trebuie să le efectueze astfel încât castelele sale să aibă aceeași înălțime.

Restricții și precizări

  • 1N1051 \leq N \leq 10^5
  • 1h1031 \leq h \leq 10^3, unde hh reprezintă înălțimea unui castel
# Puncte Restricții
1 10 Toate castelele au înălțimile egale.
2 45 N103N \leq 10^3
3 15 Înălțimile castelelor sunt sortate crescător
4 30 Fără restricții suplimentare

Exemplul 1

castele.in

7
3 1 2 1 2 3 3

castele.out

5

Explicație

Avem 77 castele cu înălțimile: 3,1,2,1,2,3,33, 1, 2, 1, 2, 3, 3. Pentru a le aduce pe toate la aceeași înălțime, una dintre strategii posibile este să alegem înălțimea finală a castelelor ca fiind 22 (deși pot exista și alte înălțimi care duc la același număr minim de operații).

  • Primul castel (3)(3) necesită 11 operație pentru a ajunge la 22 (înlăturăm o lopată de nisip).
  • Al doilea castel (1)(1) necesită 11 operație pentru a ajunge la 22 (adăugăm o lopată de nisip).
  • Al treilea (2)(2) nu necesită nicio operație, este deja la înălt, imea 22.
  • Al patrulea (1)(1) necesită 11 operație pentru a ajunge la 22.
  • Al cincilea (2)(2) este deja la 22.
  • Al s,aselea (3)(3) necesită 11 operație pentru a ajunge la 22.
  • Al s,aptelea (3)(3) necesită 11 operație pentru a ajunge la 22.

Numărul total de operații este 1+1+0+1+0+1+1=51 + 1 + 0 + 1 + 0 + 1 + 1 = 5.

Exemplul 2

castele.in

4
1 1 10 10

castele.out

18

Explicație

Avem 44 castele cu înălțimile: 1,1,10,101, 1, 10, 10. De exemplu, dacă alegem ca toate să fie înălțimea 11:

  • Primele două castele (1(1 și 1)1) sunt deja la 11, deci 00 operații.
  • Următoarele două (10(10 și 10)10) necesită câte 99 operații fiecare pentru a ajunge la 11 (înlăturăm câte o lopată de nisip de 99 ori pentru fiecare).

Totalul este 0+0+9+9=180 + 0 + 9 + 9 = 18 operații, iar acesta este numărul minim.

Log in or sign up to be able to send submissions!