Rezolvare PBinfo #4337

Decorative Icon Problema: normalizare / 4337

Decorative IconAutor: Darius

Cerința

Se dă un șir de n numere întregi a = (a[1], a[2], ..., a[n]). Trebuie să construiți un nou vector b de lungime n în care valorile sunt cuprinse între 1 și n astfel: toate elementele a[i] care memorează valoarea minimă se înlocuiesc în b[i] cu 1, toate elementele a[j] imediat mai mari decât minimele se înlocuiesc în b[j] cu 2, ș.a.m.d. De exemplu, dacă a = (7,-3,1,-55,20,7,-3,1), atunci b = (4,2,3,1,5,4,2,3). Se observă că valoarea minimă -55 apare o singură dată la poziția 4, deci b[4] = 1, valoarea imediat mai mare decât minimul este -3 deci b[2] = 2 și b[7] = 2, următoarea valoare este 1, deci b[4] = 3 și b[8] = 3. Urmează valoarea 7, deci b[1] = 4 și b[6] = 4. În fine, cea mai mare valoare este 20 și va fi marcată în b cu 5.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi șirul a de n numere întregi, separate prin spații.

Date de ieșire

Programul va afișa pe ecran, separate prin spații, cele n elemente ale șirului b.

Restricții și precizări
  • 1 ≤ n ≤ 100.000
  • cele n elemente ale șirului a vor fi întregi din intervalul [-2.000.000.000, 2.000.000.000]
Exemplu:

Intrare

8
7 -3 1 -55 20 7 -3 1

Ieșire

4 2 3 1 5 4 2 3 

Decorative Icon Explică rezolvarea folosind Inteligența Artificială

Folosește modelul nostru de AI special antrenament pentru a rezolva problemele de pe PBinfo! În baza creditelor AI primești explicații pentru probleme, pe care le alegi și le rulezi exact atunci când dorești, la un singur click distanță! Află mai multe informații:

👉 Achiziționează credite AI
Andrei Frîntu
Andrei Frîntu

Fondatorul platformei - mentor Academia

LinkedIn Instagram GitHub
© Copyright 2026 - CodulLuiAndrei.ro - Toate drepturile sunt rezervate