386
Se numeşte permutare a unei mulţimi finite orice rearanjare a tuturor elementelor acelei mulţimi.
Cerinţa
Se dă un şir cu n elemente, numere naturale. Să se verifice dacă reprezintă o permutare a mulţimii {1,2,...,n}.
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ă şirul reprezintă o permutare a mulţimii {1,2,...,n}, respectiv NU în caz contrar.
Restricţii şi precizări
1 ≤ n ≤ 100
Exemplul 1:
Date de intrare
5 2 5 4 3 1
Date de ieșire
DA
Exemplul 2:
Date de intrare
5 2 5 4 3 9
Date de ieșire
NU
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
int a[101];
for(int i = 1 ; i <= n ; ++i)
cin >> a[i];
sort(a+1, a+n+1);
bool dif=true;
for(int i = 1 ; i <= n ; ++i)
{
if(a[i]!=i)
dif=false;
}
if(dif)
cout << "DA";
else
cout << "NU";
return 0;
}
Comentarii