Está en la página 1de 2

//Calculati produsul lementelor unui vector folosind Divide et Impera

#include<iostream>
using namespace std;
int n,pr,i,v[100];
int Divide(int p,int q)
{
if(p==q)return v[p];
else
{
int m=(p+q)/2;
pr=Divide(p,m)*Divide(m+1,q);
}
}
int main()
{
cin>>n;
for(i=1;i<=n;i++)cin>>v[i];
cout<<Divide(1,n);
return 0;
}
//Determinanti minimul dintre elementele unui vector folosind Divide et Impera
#include<iostream>
using namespace std;
int n,pr,i,v[100];
int Divide(int p,int q)
{
if(p==q)return v[p];
else
{
int m=(p+q)/2;
if(Divide(p,m)<Divide(m+1,q))Divide(p,m);
else Divide(m+1,q);
}
}
int main()
{
cin>>n;
for(i=1;i<=n;i++)cin>>v[i];
cout<<Divide(1,n);
return 0;
}
//Determinanti nr aparitiilor lui x printre elementele unui vector folosind Divi
de et Impera
#include<iostream>
using namespace std;
int n,pr,i,v[100],x,nr=0;
int Divide(int p,int q)
{
if(p==q){if(v[p]==x)return ++nr;}
else
{
int m=(p+q)/2;
Divide(p,m);Divide(m+1,q);
}
}
int main()
{
cin>>n;

for(i=1;i<=n;i++)cin>>v[i];
cin>>x;
cout<<Divide(1,n);
return 0;
}

También podría gustarte