350
Cerinţa
Se dă un vector cu n
elemente numere naturale. Să se șteargă din vector toate elementele care sunt numere prime.
Date de intrare
Programul citește de la tastatură numărul n
, iar apoi n
numere naturale, separate prin spaţii, reprezentând elementele vectorul.
Date de ieşire
Programul afișează pe ecran, separate prin spații, elementele vectorului obținut prin ștergerea elementelor prime.
Restricţii şi precizări
0 < n ≤ 1000
- elementele vectorului vor fi mai mici decât
2
30
Exemplu
Intrare
5 7 8 9 17 1
Ieșire
8 9 1
#include <bits/stdc++.h> using namespace std; int main() { int n; cin >> n; int a[1001]; for(int i = 1; i <= n; ++i) cin >> a[i]; for(int i = 1; i <= n; ++i){ int ca = a[i]; int d = 2, cnt = 1; while(ca > 1){ int p = 0; while(ca % d == 0) ca /= d, p++; cnt *= (p + 1); d++; if(d * d > ca) d = ca; } if(cnt == 2){ for(int j = i + 1; j <= n; ++j) a[j-1] = a[j]; n--; i--; } } for(int i = 1; i <= n; ++i) cout << a[i] << " "; return 0; }
Comentarii