Informatică, întrebare adresată de irina973, 8 ani în urmă

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???
irina973: Se cere sa de afișeze câte dintre elementele celui de al doilea șir nu se regăsesc și in primul sir
irina973: Scuze, nu am fost atenta și am scris gresit
irina973: Un exemplu:
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 boiustef
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