Fișierul BAC. Txt conține e prima linie doua valori naturale m și n< 100, pe a doua linie un șir de m numere intregi, iar pe a treia linie un șir de n numere intregi. Fiecare dintre aceste șiruri sunt ordonate strict crescător, iar elementele lor au cel mult 9 cifre fiecare. Numerele de pe același rând sunt separate prin câte un spațiu.
Se cere sa se afișeze păcate dintre elementele celui de al doilea șir nu se regăsesc și in primul șir)
boiustef:
irina, să se afișeze ce???
6 7
1 2 3 4 7 20
3 5 7 8 20 24
Se va afișa valoarea 4 ( numerele care respecta condiția sunt 5 8 9 24)
Răspunsuri la întrebare
Răspuns de
2
Răspuns:
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("bac.txt");
int n, m;
int main()
{
f >> m >> n;
int v[m];
for (int i=0; i<m; i++) {
f >> v[i];
}
int a, nr=0;
bool nugasit;
for (int i=0; i<n; i++) {
f >> a;
nugasit=true;
for (int j=0; j<m & nugasit; j++) {
if (a==v[j]) {
nugasit=false;
}
}
if (nugasit) {
++nr;
}
}
cout << nr;
}
Explicație:
mai sunt ceva ceva ce nu am folosit... că sirurile sunt strict crescătoare ... poate se poate face algoritmul mai eficient...
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Engleza,
9 ani în urmă