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

Se dau două numere naturale nenule cu cel mult 10 cifre. Se cere să se afişeze cifrele comune. Exemplu: pentru numerele 12323234 şi 657284 se va afişa 2 4.

Răspunsuri la întrebare

Răspuns de Petruccinator
1

#include <iostream>

void comun(const char* a, const char* b){

   bool table[2][10]={{false}};

   for(; *a; ++a)

       table[0][*a-'0'] = true;

   for(; *b; ++b)

       table[1][*b-'0'] = true;

   for(int i = 0; i < 9; ++i)

       if(table[0][i] + table[1][i] == 2)

           std::cout << i << ' ';

}

int main(){

   char a[11], b[11];

   std::cin >> a >> b;

   comun(a, b);

   return 0;

}


boiustef: frumos....
boiustef: era util să-i dai şi nişte explicaţii....
Petruccinator: Folosește un tabel de căutare (lookup table)
Alte întrebări interesante