Professional Documents
Culture Documents
Divite Et Impera
Divite Et Impera
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
-------------------------------------
#include <iostream>
#include <fstream>
using namespace std; ///suma impare
ifstream f("date.in");
ofstream g("date.out");
int v[100],i,j,n;
int dei(int i, int j)
{
int x,y,m;
if(i==j)
{if(v[i]%2==1)
return v[i];}
else
{
m=(i+j)/2;
x=dei(i,m);
y=dei(m+1,j);
return x+y;
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
-------------------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out"); ///cmmdc divide et impera
int v[100],i,j,n;
int cmmd(int a,int b)
{
while(a!=b)
if(a>b) a=a-b;
else b=b-a;
return a;
}
else
{
m=(i+j)/2;
x=dei(i,m);
y=dei(m+1,j);
return cmmd(x,y);
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
------------------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out"); ///valoarea minima
int v[100],i,j,n;
int dei(int i, int j)
{int x,y,m;
if(i==j)return v[i];
else
{m=(i+j)/2;
x=dei(i,m);
y=dei(m+1,j);
if(x<y)
return x;
else return y;
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
-
----------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
int v[100],i,j,n;
int sum(int a)
{int s=0;
while(a!=0)
{ s=s+a%10; ///sum cifre componente
a=a/10;
}
return s;
}
else
{m=(i+j)/2;
x=dei(i,m);
y=dei(m+1,j);
return x+y;
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
---------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
int v[100],i,j,n,nr;
int pal(int a)
{
int inv=0,c=a;
while (a!=0)
{
inv=inv*10+a%10;
a=a/10;
}
if (inv==c)
return 1;
else
return 0;
}
int dei(int i, int j)
{
int x,y,m;
if(i==j)
if(pal(v[i])==1)return 1;
else return 0;
else
{
m=(i+j)/2;
x=dei(i,m);
y=dei(m+1,j);
return x+y;
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
----------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in"); ///pal si prime idem
ofstream g("date.out");
int v[100],i,j,n,nr;
int pal(int a)
{
int inv=0,c=a;
while (a!=0)
{
inv=inv*10+a%10;
a=a/10;
}
if (inv==c)
return 1;
else
return 0;
}
int dei(int i, int j)
{
int x,y,m;
if(i==j)
if(pal(v[i])==1)return 1;
else return 0;
else
{
m=(i+j)/2;
x=dei(i,m);
y=dei(m+1,j);
return x+y;
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
-----------------------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
int v[100],i,j,n,nr; ///suma de pp perfecte
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
-------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
int v[100],i,j,n,nr; ///suma v1*v2+v2*v3....
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
-----------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out"); ///785 (v1+v2)*(v2+v3)..
int v[100],i,j,n,nr;
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n-1);
return 0;
}
--------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
int v[100],i,j,n,nr;
else
{
m=(i+j)/2;
x=dei(i,m);
y=dei(m+1,j);
return x+y ;
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
g<<dei(1,n);
return 0;
}
--------------------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out"); ///778
int v[100],i,j,n,nr;
else
{
m=(i+j)/2;
dei(i,m);
dei(m+1,j);
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
dei(1,n);
return 0;
}
--------------------------------------------------------------------
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("date.in"); ///783
ofstream g("date.out");
int v[100],i,j,n,nr,p,k;
else
if(k!=1) //cand sunt pe primul apel
{
m=(i+j)/2;
g<<"(";
x=dei(i,m,k);
g<<"*";
y=dei(m+1,j,k);
g<<")";
return x*y;
}
else
{
m=(i+j)/2;
x=dei(i,m,k);
g<<"*";
y=dei(m+1,j,k);
return x*y;
}
}
int main()
{
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
p=dei(1,n,k);
g<<"="<<p;
return 0;
}
----------------------------------------------------------------