I am unable to find error in my code (logic is correct)

LINK OF THE PROBLEM:- Split And Maximize Practice Coding Problem - CodeChef
MY CODE:-
include <bits/stdc++.h>
using namespace std;
// define loop for (int i = 0; i <n; i++)
// define rloop for (int i = n-1; i >= 0; i–)
// define printspace cout<< <<" “;
// define printentre cout<< <<endl;
define debug(x) cerr << #x << " = " << x << endl
define debug2(x, y) cerr << #x << " = " << x << “, " << #y << " = " << y << endl
define endl (”\n”)
define pi (3.141592653589)
define ll long long
define float double
long long int m = 1152921504606846976;
long long int base_power(long long int base, long long int power)
{
if (power == 1)
return base % m;
long long int help = base_power(base, power / 2);
if (power & 1)
return (base * ((help * 1LL * help) % m)) % m;
else
return (help * help) % m;
}
int main()
{
int t;
cin >> t;
while (t–)
{
int n;
cin >> n;
// ll int a[n];
ll int bit[61] = {0};
for (int i = 0; i < n; i++)
{
int input;
cin >> input;
for (int j = 0; j <= 60; j++)
{
int last_bit = input & 1;
bit[j] = bit[j] + last_bit;
input = input >> 1;
}
}
// cout << “hii\n”;
for (int i = 60; i >= 1; i–)
{
if (bit[i] % 2 == 0 && bit[i] > 0)
{
bit[i]–;
for (int j = 0; j < i; j++)
{
if (bit[j] % 2 == 0 && j != 0)
bit[j]++;
}
break;
}
}

    long long ans = 0;
    for (int i = 0; i <= 60; i++)
    {
        // cout << bit[i] << " ";
        if (bit[i] % 2 != 0)
        {
            ll int help3 = 1 * 1LL << i;
            ans = ans + help3;
        }
    }
    cout << ans << endl;
}
return 0;

}
//