#include<bits/stdc++.h>
#define ll long long
using namespace std;
bool check(string s)
{
ll dem = 0;
ll n = s.size();
for (int i = 0 ; i < n / 2 ; i++)
{
if (s[i] != s[n - i - 1])dem++;
}
if (dem == n / 2)return true;
return false;
}
void solve()
{
ll n;
string s;
cin >> n >> s;
if (n % 2 == 1)
{
cout << -1 << "\n";
return;
}
vector<ll>a;
for (int k = 0 ; k < 300 ; k++)
{
ll n = s.size();
for (int i = 0 ; i < n / 2; i++)
{
if (s[i] == s[n - 1 - i] && s[i] == '0')
{
a.push_back(n - i);
s.insert(n - i, "01");
break;
}
if (s[i] == s[n - 1 - i] && s[i] == '1')
{
a.push_back(i);
s.insert(i, "01");
break;
}
}
}
if (check(s))
{
cout << a.size() << "\n";
for (auto i: a)cout << i << " ";
cout << "\n";
return;
}
cout << -1 << "\n";
}
int main()
{
ios_base::sync_with_stdio(false), cin.tie(0), cout.tie(0);
ll t;
cin >> t;
while(t--)
{
solve();
}
}
1030B - Vasya and Cornfield | 1631A - Min Max Swap |
1296B - Food Buying | 133A - HQ9+ |
1650D - Twist the Permutation | 1209A - Paint the Numbers |
1234A - Equalize Prices Again | 1613A - Long Comparison |
1624B - Make AP | 660B - Seating On Bus |
405A - Gravity Flip | 499B - Lecture |
709A - Juicer | 1358C - Celex Update |
1466B - Last minute enhancements | 450B - Jzzhu and Sequences |
1582C - Grandma Capa Knits a Scarf | 492A - Vanya and Cubes |
217A - Ice Skating | 270A - Fancy Fence |
181A - Series of Crimes | 1638A - Reverse |
1654C - Alice and the Cake | 369A - Valera and Plates |
1626A - Equidistant Letters | 977D - Divide by three multiply by two |
1654B - Prefix Removals | 1654A - Maximum Cake Tastiness |
1649A - Game | 139A - Petr and Book |