In this

**HackerEarth Fredo and Sums problem solution,**Fredo has an array A consisting of N elements. He wants to divide the array into N/2 pairs where each array element comes in exactly one pair. Say that pair i has elements Xi and Yi, he defines S as :S = Sigma(i=1,N/2) abs(Xi - Yi)

He asks you to find the minimum and maximum value of S.

## HackerEarth Fredo and Sums problem solution.

`#include<bits/stdc++.h>`

#define ll long long

using namespace std;

int main()

{

int t;

cin>>t;

assert(t>=1 && t<=10);

while(t--)

{

int n,a[100005];

cin>>n;

assert(n>=1 & n<=1e5);

assert(!(n&1));

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

{

cin>>a[i];

assert(a[i]>=-1e9 && a[i]<=1e9);

}

sort(a,a+n);

ll mins=0,maxs=0;

for(int i=1;i<n;i+=2)

mins+=(ll)(a[i]-a[i-1]);

for(int i=0;i<n/2;i++)

maxs+=(ll)(a[n-1-i]-a[i]);

cout<<mins<<" "<<maxs<<"\n";

}

return 0;

}

## 0 Comments