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

Se dă un şir cu n elemente, numere naturale. Să se verifice dacă toate elementele şirului au toate cifrele distincte
*Restricţii şi precizări
1 ≤ n ≤ 100
elementele şirului vor avea cel mult 9 cifre

Exemplu
Date de intrare

5
84 60 102 24 6

Date de ieșire:


Sergetec: Interesanta problema
Sergetec: Am folosit vectori la rezolvare, sper ca nu este o problema, oricum alta varianta nu prea vad pentru rezolvare, ar mai fi una in care verificam fiecare cifra pe rand, dar cu vectori avem niste eficienta
Sergetec: fiecare numar pe rand*

Răspunsuri la întrebare

Răspuns de Sergetec
0

Salut!

Ai mai jos rezolvarea in limbaj C++

#include <iostream>

using namespace std;

int v[11];

int clean()

{

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

 v[i] = 0;

}

int verifica()

{

int ok = 1;

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

{

 if (v[i] > 1)

 {

   ok = 0;

   break;

 }

}

if (ok == 1)

{

 return 1;

}

return 0;

}

int main()

{

 int n;

 cin >> n;

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

 {

   clean();

   int x;

   cin >> x;

   while(x != 0)

   {

     v[x % 10]++;

     x /= 10;

      }

      int k = verifica();

      if(k == 0)

      {

         cout << "NU";

         break;

      }

  }

  cout << "DA";

  return 0;

}

Alte întrebări interesante