Documente Academic
Documente Profesional
Documente Cultură
Bac C PDF
Bac C PDF
Subiectul I
1. a
2. a) 615243
b) 4321, 5432
c) d)
Subiectul II
1. d
2. c
3.
0 1 0 0 1
0 0 0 0 1
0 1 0 0 0
1 0 0 0 0
1 1 0 1 0
4. [0, 5, 1, 1, 1, 1]
5.
Subiectul III
1. a
3.
4. Toți termenii unei secvențe uniforme sunt egali, așadar este de ajuns să memorăm într-o
variabilă (termen) valoarea care descrie ultima secvență de lungime maximă. Astfel, pentru
a afișa această secvență, trebuie să afișăm termenul care descrie secvența respectivă de
un număr de ori egal cu lungimea ei.
Pentru a rezolva problema este de ajuns să memorăm termenul precedent din șir (vechi) și
termenul curent din șir (nou), reducând în acest fel memoria folosită. Dacă elementul
curent este egal cu cel care-l precede, atunci mărim lungimea secvenței curente (l_curent)
cu o unitate și o comparăm cu cea maximă (l_maxim). Dacă lungimea secvenței curente este
mai mare sau egală cu cea maximă, atunci actualizăm lungimea maximă precum și termenul
care o descrie. Dacă elementul curent nu este egal cu cel care-l precede atunci, din poziția
în care ne aflăm, o să începem o nouă secvență, deci vom reseta lungimea curentă la
valoarea 1.
Complexitatea în timp este O(N), iar complexitatea în spațiu este O(1). N – numărul de
elemente ale șirului.
Ministerul Educaţiei și Cercetării Științifice
Centrul Naţional de Evaluare şi Examinare
a. 2 b. 3 c. 4 d. 5
Subiectul I
1. d
2. a) 2
b) 54344
c) d)
Subiectul II
1. b
2. c
3. Un lanț elementar corespunzător cerinței este: 3, 6, 5.
4.
5.
Subiectul III
1. a
2. 864157
3.
4. Pentru a rezolva problema este de ajuns să reținem în două variabile ultimul număr par
citit (ultimPar), respectiv ultimul număr impar citit (ultimImpar). De fiecare dată când
citim o nouă valoare a șirului o comparăm cu ultimul element de aceeași paritate. Dacă noua
valoare este pară și mai mică decât ultimPar sau dacă noua valoare este impară și mai mare
decât ultimImpar atunci afișăm mesajul “NU”, altfel schimbăm valoarea ultimului element
citit de paritate corespunzătoare (ultimPar/ultimImpar) cu noua valoare și continuăm
citirea.
Complexitatea în timp este O(N), iar complexitatea în spațiu este O(1), unde N este
numărul de elemente ale șirului.
Ministerul Educaţiei Naționale și Cercetării Științifice
Centrul Naţional de Evaluare şi Examinare
Subiectul I
1. a
2. a) 3
b) 18
c) d)
Subiectul II
1. d
2. a
3. Lungimea celui mai lung lanț este 3.
4.
5.
Subiectul III
1. b
2.010011, 010100
3.
1 –1 2 -2 3 -3 4 -4 5 -5 6...
(−1)𝑛+1 (𝑛 + 1)
𝑓𝑛 = [ ]
2
Așadar, putem genera termenii șirului în ordine inversă folosind această formulă.
a. 1 b. 2 c. 3 d. 4
Subiectul I
1. a
2. a) 16
b) Cele patru seturi sunt: (2, 4), (4, 5), (5, 6), (7, 7)
c) d)
Subiectul II
1. b
2. b
3.
4.
5.
Subiectul III
1. c
2. 1234123121
3.
4. Conform enunțului, pentru a insera un șir A (de lungime m) într-un alt șir B (de lungime n)
trebuie să găsim două poziții consecutive în șirul B, fie acestea i și i + 1, astfel încât:
B[i] < A[1], altfel spus elementul B[i] trebuie să fie mai mic decât cel mai mic element
din șirul A; deoarece șirul A este ordonat stric crescător, atunci acest element este
chiar primul element din șir A[1];
B[i + 1] > A[m], cu alte cuvinte elementul B[i + 1] trebuie să fie mai mare decât cel
mai mare element din șirul A; deoarece șirul A este ordonat strict crescător, atunci
acest element este ultimul element din șir A[m].
Dacă nu găsim niciun 𝒊 ∈ [𝟏, 𝒏 − 𝟏] care să respecte aceste condiții afișăm mesajul “imposibil”.
Se observă că pentru a rezolva problema este de ajuns să reținem primul și ultimul element
al șirului A și câte două elemente consecutive din șirul B, astfel memorarea celor două șiruri
este redundantă, chiar și citirea tuturor elementelor șirului B în multe cazuri.
Complexitatea în timp: O(n + m)
Subiectul I
1. d
2. a) 2
c) d)
Subiectul II
1. d
2. c
3.
4.
5.
Subiectul III
1. b
4. Se observă că cea mai lungă secvență încadrată care începe și se termină cu un număr
K are ca extremități prima și ultima apariție a numărului K. Deoarece mulțimea din care
ia valori numărul K este relativ mică, putem folosi doi vectori de frecvență cu următoarea
semnificație:
Așadar, lungimea maximă a unei secvențe încadrate care începe și se termină cu un număr
K este: PMAX[ K ] – PMIN[ K ] + 1. Astfel, după ce am calculat cei doi vectori,
parcurgem toate valorile posibile ale lui K și reținem valoarea maximă pe care o poate avea
expresia PMAX[ K ] – PMIN[ K ] + 1, obținând lungimea maximă globală a unei secvențe
încadrate. Apoi, pargurgem din nou toate valorile posibile ale lui K, în ordine crescătoare,
și le afișăm pe acelea care corespund unei secvențe încadrate de lungime maximă (globală).
O altă observație este faptul că în rezolvarea problemei sunt necesari doar cei doi vectori
de frecvență. Așadar, putem să îi calculăm în timp ce citim elementele șirului, evitând
astfel memorarea întregului șir în memorie.
Complexitate în spațiu: O(Kmax) unde Kmax este valoarea maximă a unui element din șir.