Rezolvare BAC Informatica 2009 – Varianta 73 – Subiectul al III-lea problema 3

Mai jos puteti gasi rezolvarea problemei 3 de la subiectul III din varianta 73 pentru examenul de bacalaureat din anul 2009


#include <fstream.h>
ifstream f("sir.in");
int cautare(int n, int x[1000], int v) {
int i, j, m;
i = 1;
j = n;
if (x[1] > v)
return 1;
if (x[n] < v)
return n + 1;
while (i <= j) {
m = (i + j) / 2;
if (x[m] > v)
j = m - 1;
else
i = m + 1;
}
return i;
}
void main() {
int x[1000], n, k, p, i;
f >> x[1];
n = 1;
cout << endl;
while (f >> k) {
p = cautare(n, x, k);
for (i = n; i >= p; i--)
x[i + 1] = x[i];
n++;
x[p] = k;
}
for (i = 1; i <= n; i++)
cout << x[i] << " ";
}

Spor la lucru! Daca aveti intrebari nu ezitati sa le lasati in comentarii, va vom raspunde cat de repede putem 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *