Probleme care se pot rezolva cu metoda Divide et Impera.
1. Fiind dat un vector U cu n
componente sa se determine elementul maximul din vector cu metoda Divide et Impera #include <iostream.h> #include <conio.h> Int U[100]; n; Int maxim (int i; int j);int,a,b; {if(i==j)return U[i]; Else A=maxim(I;(i+j)/2); B=maxim((i+j)/2+1;j); Else return b; } Void main() {int I; Cout <<n=;cin>>n; for (i=1;i<=n;i++) Cin>>u[i] Cout<<maxim=<<maxim(1,u, j); Getch () ;}
2.Fiind dat un vector.Sa se determine suma elementelor sale. #include<iostream.h> #include<conio.h> Int v(100),n, Int suma(int I,intj) {if (i==j) return v[i]; Else Return suma(I,(i+j)/2)+suma((i+j)/2+1; }