# Wrong ans in Binary Concatenation

``````/************

Author :- Profesor(Abhishek)
2020-07-25-19.42.44
**********/
#include <bits/stdc++.h>

using namespace std;

#define ll long long
#define fast ios_base::sync_with_stdio(0);cin.tie(0);
#define endl "\n"
#define fori(i,a,b) for(ll i=a;i<b;i++)
#define forr(i,a,b) for(ll i=a;i>=b;i--)
#define forit(it,x) for (auto it=(x).begin();it!=(x).end(); it++)
#define all(x) (x).begin(),(x).end()
#define allr(x) (x).rbegin(),(x).rend()
#define eb emplace_back
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define sll set<ll>
#define vll vector<ll>
#define msl map<string,ll>
#define mll map<ll,ll>

unsigned countBits(unsigned ll number)
{

return (ll)log2(number)+1;
}

ll i, j, k;
int main()
{
fast;
ll t;
cin >> t;
while(t--)
{
ll n;
cin >> n;
ll arr[n];
fori(i,0,n)
{
cin >> arr[i];
}
if(n==1)
{
cout << arr[0] << endl;
continue;
}
sort(arr , arr+n);

ll xplusy, yplusx ,maximum = INT_MIN , x , y;

fori(i, 0, n-1)
{
fori(j,i+1,n)
{
xplusy=pow(2, countBits(arr[j]))*arr[i]+arr[j];
yplusx = pow(2,countBits(arr[i]))*arr[j]+arr[i];
ll ans = xplusy - yplusx;
ans=abs(ans);
if( ans > maximum)
{
maximum = ans;
x= arr[i];
y=arr[j];

}
}
}
cout << maximum << endl;
//        cout << x << endl << y << endl;

}
return 0;
}
``````