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

#507 Cautare

Cerința
Se dă un vector x cu n elemente numere naturale, și un vector y cu m elemente, de asemenea numere naturale. Verificați pentru fiecare element al vectorului y dacă apare în x.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi cele n elemente ale vectorului x. Apoi și citește m și cele m elemente ale lui y.

Date de ieșire
Programul va afișa pe ecran m valori 0 sau 1, separate prin exact un spațiu. A j-a valoare afișată este 1, dacă al j-lea element al șirului y apare în x, respectiv 0 în caz contrar.

Restricții și precizări
1 ≤ n,m ≤ 1000
elementele celor 2 vectori vor fi mai mici decât 1.000.000.000



Exemplu
Intrare

7
9 6 5 14 2 1 10
8
8 14 9 14 16 15 4 2
Ieșire

0 1 1 1 0 0 0 1

Răspunsuri la întrebare

Răspuns de Lică211
6

#include <iostream>

using namespace std;

int main()

{

   unsigned int n,m, x[1000],y[1000],i,j,k;

   cin>>n;

   for(i=1;i<=n;i++)

       cin>>x[i];

   cin>>m;

   for(j=1;j<=m;j++)

       cin>>y[j];

   for(j=1;j<=m;j++)

   {

      k=0;

      for(i=1;i<=n;i++)

      {

          if(y[j]==x[i])

             k++;

      }

      if(k>=1)

       cout<<"1 ";

      else cout<<"0 ";

   }

   return 0;

}



pmarian98: si eu care am folosit divide and impera, subprograme si vector auxiliar in care adaugam valorile 1 si 0
Lică211: :))
Alte întrebări interesante