📌 Despre Varianta 5 din 2023
Varianta 5 din 2023 trece prin expresii, recursivitate, șiruri de caractere, arbori, grafuri orientate, backtracking, structuri imbricate, divizori, matrice și fișiere. Este o variantă echilibrată, bună pentru exersat urmărirea atentă a codului.
Subiectul I (20p): 5 grile: expresia cu cea mai mare valoare dintre patru calcule cu * și /, un subprogram recursiv care afișează resturile împărțirii la 2, o secvență care pune terminatorul de șir în mijlocul lui bac2023, un vector de „tați” în care un nod are trei ascendenți și numărul minim de arce de adăugat ca un graf orientat să aibă trei componente tare conexe date.
Subiectul al II-lea (40p): Un algoritm în pseudocod care elimină din număr cifrele care nu sunt mai mari decât toate cele din dreapta lor, o problemă de backtracking cu amestecuri de apă din surse sărate și dulci și o structură lalea cu un câmp stoc care este tot o structură.
Subiectul al III-lea (30p): Un subprogram cu divizori (abundent, care compară raportul S(n)/n cu al tuturor numerelor mai mici), o problemă cu matrice care găsește cel mai adânc punct din fiecare secțiune a unui râu și o problemă de eficiență cu prefixele și sufixele de două cifre ale numerelor din fișierul bac.txt.
⚠️ La ce să fii atent
- La I.1:
* și / se aplică de la stânga la dreapta, deci (20*23)/2*2 înseamnă 230*2, adică 460, nu 460/4. Este cea mai mare valoare dintre cele patru. - La I.2: Și apelul
f(0) afișează ceva: 0%2, adică 0. De aceea rezultatul începe cu un 0 în fața scrierii lui 23 în baza 2: 010111. - La I.5: Depozitul 3 nu are niciun arc, iar între 2 și 4 nu există niciun arc. Ai nevoie de un arc care intră în 3 și de unul care iese din el, plus
2→4 și 4→2, deci minimul este 4. - La III.1: Rapoartele sunt numere reale:
S(4)/4 este 1.75. Dacă împarți două valori de tip int, se pierd zecimalele și rezultatul este 1, iar comparațiile ies greșite. - La III.3: Doar numerele cu 3 sau 4 cifre au prefix și sufix de două cifre. Numerele de două cifre, ca 98, nu contează, iar un sufix ca
05, din 3405, nu are două cifre. În exemplu, rezultatul este 4.