📌 Despre Varianta 4 din 2026
Varianta 4 din 2026 trece prin operatorii / și %, recursivitate, backtracking, grafuri orientate și neorientate, factori primi, șiruri de caractere, structuri, cifre, matrice și fișiere. Este o variantă echilibrată, bună pentru recapitularea întregii materii.
Subiectul I (20p): 5 grile: expresia care valorează 26, un subprogram recursiv care numără pașii până când n ajunge la m, o problemă de backtracking cu pachete de vacanță, un circuit elementar într-un graf orientat dat prin matricea de adiacență și numărul minim de muchii eliminate ca o rețea de 12 centre să se împartă în trei componente de câte 4 noduri.
Subiectul al II-lea (40p): Un algoritm în pseudocod care numără factorii primi distincți ai unui număr, o secvență cu strlen, strstr și strcmp și definiția unei structuri observator care conține un tablou de structuri.
Subiectul al III-lea (30p): Un subprogram cu cifre (moda, poziția primei cifre pare, numărată de la stânga), o problemă cu o matrice în care minimul fiecărei coloane se mută sus sau jos, după paritate, și o problemă de eficiență care scrie în fișierul bac.txt, descrescător, termenii unui șir definit printr-o recurență.
⚠️ La ce să fii atent
- La I.2: La fiecare apel,
n crește cu 1 și m scade cu 2, deci distanța dintre ele scade cu 3: 9, 6, 3, 0. Sunt trei apeluri care adaugă 1, deci f(1,10) = 3. - La II.1.a:
p devine 1 o singură dată pentru fiecare divizor, oricâte împărțiri s-ar face. Nu uita de ultimul pas: după buclă, n a rămas 13, iar dacă n≠1 îl mai numără o dată. Rezultatul este 3. - La II.2:
strstr(s,t)==s compară adrese: este adevărat pentru că ana apare chiar la începutul lui s. strstr(s+1,t) găsește ana de la finalul cuvântului, iar strcmp dă 0. - La III.1: Numărul de ordine se socotește de la stânga, iar cifra 0 este pară. Pentru
n=5700, primul costum este pe poziția 3, chiar dacă parcurgi cifrele de la dreapta. - La III.3: Șirul crește, deci valoarea absolută se poate scoate: termenul următor este 3·y - 2·x. Întoarce formula ca să obții termenul de dinainte, iar pentru
3*y cu y până la 10⁹ folosește long long.