SumPareVec

Se consideră un șir cu n elemente, numere naturale. Folosind metoda Divide et Impera, determinați suma elementelor pare din acest șir.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi cele n elemente ale șirului.

Date de ieșire
Programul va afișa pe ecran numărul S, reprezentând suma cerută.

Restricții și precizări
1 ≤ n ≤ 1000
elementele șirului vor fi mai mici decât 1.000.000
se recomandă folosirea metodei Divide et Impera

Exemplu
Intrare

6
4 1 8 4 3 5
Ieșire

16

Solutie

using namespace std;
int sum(int v[],int st,int dr)
{
if(st==dr)
{
if(v[st]%2==0)
return v[st];
else return 0;
}
else
{
int m=(st+dr)/2;
int s1=sum(v,st,m);
int s2=sum(v,m+1,dr);
return s1+s2;
}
}
int main()
{
int v[1005],st=0,dr,n;
cin>>n;
dr=n-1;
for(int i=0;i>v[i];
cout<<sum(v,st,dr);
return 0;
}

%d bloggers like this: