303
Cerinţa
Se dă un şir cu n
elemente, numere naturale. Folosind metoda Divide et Impera să se verifice dacă toate elementele şirului sunt pare.
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 sunt pare, respectiv NU
în caz contrar.
Restricţii şi precizări
1 ≤ n ≤ 100
- elementele şirului vor fi mai mici decât
10000
Exemplu
Date de intrare
5 2 8 6 10 8
Date de ieșire
DA
#include <bits/stdc++.h> using namespace std; bool toate_pare(int a[], int st, int dr){ if(st == dr) return a[st] % 2 == 0; else{ int mij = (st + dr) / 2; return toate_pare(a, st, mij) && toate_pare(a, mij + 1, dr); } } int main() { int n, a[101]; cin >> n; for(int i = 1; i <= n; ++i) cin >> a[i]; if(toate_pare(a, 1, n)) cout << "DA"; else cout << "NU"; return 0; }
Comentarii