Sari la conținut

Problema #293 – CifreDistincte – Rezolvari PBInfo

de Mihai-Alexandru 1 min citire

Cerinţa

Se dă un şir cu n elemente, numere naturale. Să se verifice dacă toate elementele şirului au toate cifrele distincte.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi cele n elemente ale şirului, separate prin spaţii.

Date de ieşire

Programul afișează pe ecran mesajul DA, dacă toate elementele şirului au toate cifrele distincte, respectiv NU în caz contrar.

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

DA
#include <bits/stdc++.h>

using namespace std;

long long int dif(int n)
{
    int a[11];
    int p = 0;
    while(n)
    {
        a[p]=n%10;
        n/=10;
        p++;
    }
    sort(a,a+p);
    bool dif=true;
    for(int i = 1 ; i <= p ; ++i)
    {
        if(a[i]==a[i-1])
        dif=false;
    }
    if(dif)
    return 1;
    else
    return 0;
}

int main()
{
    int n;
    cin >> n;
    long long int tmp;
    bool diferit=true;
    for(int i = 1 ; i <= n ; ++i)
    {
        cin >> tmp;
        if(dif(tmp)==0)
        diferit=false;
    }
    if(diferit)
    cout << "DA";
    else
    cout << "NU";
    
    return 0;
}