Bacalaureat 2022 la informatică: sesiunea specială, mate-info
Subiectul oficial din 2022, cu baremul, pe 90 de puncte. Grilele și răspunsurile scurte le verifici pe loc; restul le scrii aici sau pe caiet, apoi te verifici pe barem.
Pentru elevii care n-au putut da examenul la data obișnuită (de exemplu, olimpicii plecați la concursuri).
Pe timp, ca la examen
Ceasul merge și dacă închizi pagina. Poți lua o singură pauză. La final, nota estimată după barem.
Subiectul ISubiectul al II-leaSubiectul al III-lea
Subiectul I 20 p
Textul 1

I.14 p
Cerința e în imaginea de mai sus, exact ca în subiectul oficial.
Vezi rezolvarea
Răspuns: d) Varianta d
Textul 2

I.24 p
Cerința e în imaginea de mai sus, exact ca în subiectul oficial.
Vezi rezolvarea
Răspuns: c) Varianta c
Textul 3

I.34 p
Cerința e în imaginea de mai sus, exact ca în subiectul oficial.
Vezi rezolvarea
Răspuns: a) Varianta a
Textul 4

I.44 p
Cerința e în imaginea de mai sus, exact ca în subiectul oficial.
Vezi rezolvarea
Răspuns: c) Varianta c
Textul 5

I.54 p
Cerința e în imaginea de mai sus, exact ca în subiectul oficial.
Vezi rezolvarea
Răspuns: b) Varianta b
Subiectul al II-lea 40 p
Textul 6

II.1.a6 p
Cerința e în imaginea de mai sus, exact ca în subiectul oficial.
Vezi rezolvarea
Răspuns: 37 23
II.1.b6 p
Construiește datele de intrare cerute în fragment.
Verifică-te pe barem
Un exemplu de răspuns
Două exemple sunt 113 și 137. Pentru 113 se afișează 13 și 11; pentru 137, 37 și 13. Fiecare fereastră este mai mare decât 1 și nu este divizibilă cu 2,3,5 sau 7.
Exemplu scris de Zece, nu singurul răspuns bun.
II.1.c10 p
Scrie programul C/C++ corespunzător algoritmului din fragment.
Verifică-te pe barem
Un exemplu de răspuns
#include <iostream>
using namespace std;
int main(){int n,x,p;cin>>n;do{x=n%100;if(x>1){p=(x%2)*(x%3)*(x%5)*(x%7);if(p!=0)cout<<x<<' ';}n/=10;}while(n>=10);return 0;}Exemplu scris de Zece, nu singurul răspuns bun.
II.1.d6 p
Rescrie algoritmul folosind structura repetitivă cerută.
Verifică-te pe barem
Un exemplu de răspuns
citește n
continuă <- 1
cât timp continuă=1 execută
x <- n%100
dacă x>1 atunci
p <- (x%2)*(x%3)*(x%5)*(x%7)
dacă p<>0 atunci scrie x,' '
n <- [n/10]
dacă n<10 atunci continuă <- 0Exemplu scris de Zece, nu singurul răspuns bun.
Textul 7

II.26 p
Rezolvă cerința din fragmentul original.
Verifică-te pe barem
Un exemplu de răspuns
Subgraful complet maxim are nodurile {1,2,3,5} și muchiile {[1,2],[1,3],[1,5],[2,3],[2,5],[3,5]}. Aceste patru noduri sunt adiacente două câte două. Nodul 4 nu se leagă de 3 sau 5, iar 6 are numai doi vecini, deci nu poate exista un subgraf complet cu cinci noduri.
Exemplu scris de Zece, nu singurul răspuns bun.
Textul 8

II.36 p
Rezolvă cerința din fragmentul original.
Verifică-te pe barem
Un exemplu de răspuns
s=0;
for(i=0;i<15;i++)s+=t[i].nrLocuri*t[i].pret;Exemplu scris de Zece, nu singurul răspuns bun.
Subiectul al III-lea 30 p
Textul 9

III.110 p
Rezolvă cerința din fragmentul original.
Verifică-te pe barem
Un exemplu de răspuns
void patrate(int n,int &x,int &y){x=0;y=0;int r=1;while(1LL*r*r<n)r++;
if(1LL*r*r!=n)return;
for(int d=2;1LL*d*d<r;d++)if(r%d==0){x=d;y=r/d;return;}
}Exemplu scris de Zece, nu singurul răspuns bun.
Textul 10

III.210 p
Rezolvă cerința din fragmentul original.
Verifică-te pe barem
Un exemplu de răspuns
#include <iostream>
using namespace std;
int main(){int n,a[100][100];cin>>n;for(int i=0;i<n;i++)for(int j=0;j<n;j++)cin>>a[i][j];
for(int i=0;i<n;i++)for(int j=i;j<n-1;j++)a[i][j]=a[i][j+1];
for(int i=0;i<n;i++){for(int j=0;j<n-1;j++)cout<<a[i][j]<<' ';cout<<'\n';}return 0;}Exemplu scris de Zece, nu singurul răspuns bun.
Textul 11

III.3.a2 p
Descrie algoritmul și justifică eficiența lui.
Verifică-te pe barem
Un exemplu de răspuns
Grupez valorile egale consecutive. Dacă un grup conține exact v copii ale valorii v, lungimea sa se adaugă secvenței progresive curente. Dacă are mai puține, secvența se întrerupe. Rețin maximul sumelor de lungimi ale grupurilor complete. Procesez separat și ultimul grup după sfârșitul fișierului. Timp O(m), memorie O(1).
Exemplu scris de Zece, nu singurul răspuns bun.
III.3.b8 p
Scrie programul C/C++ pentru problema din fragment.
Verifică-te pe barem
Un exemplu de răspuns
#include <iostream>
#include <fstream>
using namespace std;
int main(){ifstream f("bac.txt");int v,ant=0,nr=0,cur=0,maxim=0;
while(f>>v){if(nr>0 && v!=ant){if(nr==ant)cur+=nr;else cur=0;if(cur>maxim)maxim=cur;nr=0;}ant=v;nr++;}
if(nr>0){if(nr==ant)cur+=nr;else cur=0;if(cur>maxim)maxim=cur;}
cout<<maxim;return 0;}Exemplu scris de Zece, nu singurul răspuns bun.
Vrei să-ți scriem când apare ceva nou pentru Bacalaureat?
Îți scriem când punem subiecte oficiale noi explicate, în ziua examenului cu grila și rezultatele și, rar, când avem nevoie de ajutorul tău. Cel mult 2 emailuri pe lună, plus zilele de examen. Doar despre Bacalaureat.
Gata! Ți-am trimis un email de confirmare. Dacă nu-l vezi, uită-te și în Promoții sau Spam.