GeeksforGeeksSolution ForSchoolDomain .Below You Can Find The Solution OfBasic ,Easy ,Medium ,Hard.You Can Also Direct Submit Your Solution toGeeksforgeeksSame Problem .You Need to login then you can submit you answers

**Problem :-**You will be given two arrays A and B of positive integers. The number of values in both the arrays will be the same say N. Your task is to find the maximum sum of products of their elements. Each element in A has to be multiplied with exactly one element in B and vice versa such that each element of both the arrays appears exactly once and the sum of product produced is maximum.

if A = {5,1,3,4,2} and B = {8,10,9,7,6} then a possible sum of product is 5*6 + 1*7 + 3*9 + 4*10 + 2*8.

**Submit Your Solution :-**

**Click Here**

**Solution :-**

#include <iostream>

#include<algorithm>

#include <vector>

using namespace std;

int main()

{

int t,i,j;

cin>>t;

while(t--)

{

int n,sum=0;

cin>>n;

vector <int> arr(n);

vector <int> arr1(n);

for(i=0;i<n;i++)

{

cin>>arr[i];

}

for(j=0;j<n;j++)

{

cin>>arr1[j];

}

sort(arr.begin(),arr.end());

sort(arr1.begin(),arr1.end());

for(i=n-1;i>=0;i--)

{

sum=sum+arr[i]*arr1[i];

}

cout<<sum<<endl;

}

return 0;

}

**Output:-**

## 0 Comments: