Examenul naţional de bacalaureat 2022 Varianta 1 SUBIECTUL I

1.

Expresia C/C++ 22/20*20/2 se evaluează de la stânga la dreapta, ținând cont de prioritatea operatorilor (înmulțirea și împărțirea au aceeași prioritate).

  1. 22/20 dă rezultatul 1 (împărțire între numere întregi).
  2. 1*20 dă rezultat 20.
  3. 20/2 dă rezultat 10.

Deci, răspunsul corect este c. 10.

2.

Analizând fiecare opțiune:

  • a. x=(“apa minerala”,10,2.5); – Aceasta este incorectă. În C/C++, nu poți atribui direct o listă de valori unei structuri în acest mod. Trebuie să atribui valori fiecărui membru al structurii individual.
  • b. x.produs.pret=2.5; – Aceasta este incorectă. Membrul produs nu există în structura x. Membrul corect este pret, direct în x.
  • c. x.denumire[5]= “Borsec”; – Aceasta este incorectă. În C/C++, nu poți atribui un șir de caractere unui singur element al unui șir de caractere în acest mod. “Borsec” este un șir de caractere, nu un caracter individual.
  • d. valoare=valoare=2*x.cantitate*x.pret;. – Aceasta este corectă. Această instrucțiune atribuie variabilei valoare rezultatul calculului, care implică accesarea corectă a membrilor cantitate și pret din structura x.

Deci, răspunsul corect este d. valoare=2*x.cantitate*x.pret;.

3.

Pentru a determina soluția generată imediat după {fotbal, handbal}, trebuie să continuăm generarea soluțiilor în ordine lexicografică, ținând cont de restricțiile date.

  1. {fotbal, handbal} este soluția curentă.
  2. Următoarea soluție ar trebui să fie generată prin adăugarea unui al treilea sport, dacă este posibil. Singurul sport care poate fi adăugat fără a încălca restricția este volei. Deci, avem {fotbal, handbal, volei}.
  3. După aceea, se generează {fotbal, volei}.
  4. Apoi, {fotbal, volei, handbal}.
  5. După aceea, se generează {handbal, baschet}.
  6. Apoi, {volei, handbal}.
  7. Apoi, {volei, handbal, baschet}.

Deci, soluția generată imediat după {fotbal, handbal} este {fotbal, handbal, volei}. Dar această solutie nu se afla printre raspunsuri.

Analizand raspunsurile date: a. {volei, handbal} b. {fotbal, handbal, baschet} – solutie interzisa, contine fotbal si baschet. c. {handbal, baschet} d. {volei, handbal, baschet}

Solutia generata imediat dupa {fotbal, handbal} este {volei, handbal}. Raspunsul corect este a. {volei, handbal}.

4.

Pentru a determina numărul de componente conexe ale grafului, trebuie să identificăm grupurile de noduri care sunt conectate între ele prin muchii.

Muchiile date sunt:

  • [1, 2]
  • [1, 3]
  • [2, 3]
  • [4, 6]

Analizând muchiile, putem observa următoarele:

  • Nodurile 1, 2 și 3 sunt conectate între ele, formând o componentă conexă.
  • Nodurile 4 și 6 sunt conectate între ele, formând o altă componentă conexă.
  • Nodul 5 nu este conectat cu nici un alt nod, deci formeaza o componenta conexa separata.

Prin urmare, graful are 3 componente conexe: {1, 2, 3}, {4, 6} si {5}.

Deci, răspunsul corect este b. 3.

5.

Pentru a rezolva această problemă, trebuie să construim arborele cu rădăcină folosind vectorul de „tați” dat și să analizăm nivelurile și frunzele.

Vectorul de „tați” este: (2, 4, 2, 0, 4, 4, x, 6, x, x, y, y).

  • Nodul 4 este rădăcina (tatăl său este 0).
  • Nodurile 1 și 3 au tatăl 2.
  • Nodurile 2, 5 și 6 au tatăl 4.
  • Nodurile 11 și 12 au tatăl y.
  • Nodurile 7, 9 și 10 au tatăl x.

Pentru a avea 5 noduri frunză pe ultimul nivel, trebuie să determinăm valorile x și y astfel încât 5 noduri să nu aibă descendenți.

  • Dacă x = 3, atunci nodul 7 are tatăl 3, nodul 9 are tatăl 3 și nodul 10 are tatăl 3.
  • Dacă y = 8, atunci nodurile 11 și 12 au tatăl 8.

Construim arborele, pentru x = 3 si y = 8:

  • Nodul 4 este rădăcina (nivelul 0).
  • Nodul 2 este la nivelul 1.
  • Nodurile 5, 6 sunt la nivelul 1.
  • Nodurile 1, 3 sunt la nivelul 2.
  • Nodul 8 este la nivelul 2.
  • Nodurile 7, 9, 10, 11 si 12 sunt la nivelul 3.

Nodurile frunză sunt 1, 5, 6, 7, 9, 10, 11, 12, adica 8 noduri.

Insa, trebuie sa avem doar 5 noduri frunza, deci trebuie sa avem si noduri care au fii.

Daca x=3 si y=8:

  • Nodul 1 este frunza
  • Nodul 5 este frunza
  • Nodul 6 este frunza
  • Nodul 7 este frunza
  • Nodul 9 este frunza
  • Nodul 10 este frunza
  • Nodul 11 este frunza
  • Nodul 12 este frunza

Daca x=8 si y=3:

  • Nodul 1 este frunza
  • Nodul 5 este frunza
  • Nodul 6 este frunza
  • Nodul 3 este frunza
  • Nodul 8 este frunza

Nodul 2 are 2 fii, 1 si 3. Nodul 4 are 3 fii, 2, 5, 6. Nodul 3 are 3 fii, 7, 9, 10. Nodul 8 are 2 fii, 11 si 12.

Nodul 3 are 3 fii frunze.

Deci, raspunsul corect este b. x=8 y=3.