// Author: _Sherbiny
#include "bits/stdc++.h"
#ifdef DBG
#include "./debug.h"
#else
#define dbg(...)
#endif
using namespace std;
typedef long long ll;
#define endl '\n'
#define int ll
///////////////////////////////////
const int N = 4e5 + 20;
int n;
string s;
int dp[N][26];
int go(int i, int p) {
if(i >= n && p == '#' - 'a') return 0;
if(i >= n) return -1e9;
int &res = dp[i][p];
if(~res) return res;
res = go(i + 1, p);
if(s[i] - 'a' == p)
res = max(res, 1 + go(i + 2, s[i + 1] - 'a'));
return res;
}
void build(int i, int p, int prev) {
if(i >= n) return;
int res = go(i, p);
if(go(i + 1, p) == res) return build(i + 1, p, prev);
cout << i - prev + 1 << ' ';
build(i + 2, s[i + 1] - 'a', i + 1);
}
void magic() {
cin >> n >> s;
s.push_back('#');
memset(dp, -1, sizeof dp);
int res = go(1, s[0] - 'a');
if(res <= 0) {
cout << -1 << endl;
return;
}
cout << res << endl;
build(1, s[0] - 'a', 0);
}
signed main() {
ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);
int t = 1;
while (t--) magic();
}
Ly8gQXV0aG9yOiBfU2hlcmJpbnkKCiNpbmNsdWRlICJiaXRzL3N0ZGMrKy5oIgoKI2lmZGVmIERCRwoKI2luY2x1ZGUgIi4vZGVidWcuaCIKCiNlbHNlCiNkZWZpbmUgZGJnKC4uLikKI2VuZGlmCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnR5cGVkZWYgbG9uZyBsb25nIGxsOwojZGVmaW5lIGVuZGwgJ1xuJwojZGVmaW5lIGludCBsbAovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwpjb25zdCBpbnQgTiA9IDRlNSArIDIwOwppbnQgbjsKc3RyaW5nIHM7CgppbnQgZHBbTl1bMjZdOwoKaW50IGdvKGludCBpLCBpbnQgcCkgewogICAgaWYoaSA+PSBuICYmIHAgPT0gJyMnIC0gJ2EnKSByZXR1cm4gMDsKICAgIGlmKGkgPj0gbikgcmV0dXJuIC0xZTk7CiAgICAKICAgIGludCAmcmVzID0gZHBbaV1bcF07CiAgICBpZih+cmVzKSByZXR1cm4gcmVzOwogICAgcmVzID0gZ28oaSArIDEsIHApOwogICAgaWYoc1tpXSAtICdhJyA9PSBwKQogICAgICAgIHJlcyA9IG1heChyZXMsIDEgKyBnbyhpICsgMiwgc1tpICsgMV0gLSAnYScpKTsKICAgIAogICAgcmV0dXJuIHJlczsKfQoKdm9pZCBidWlsZChpbnQgaSwgaW50IHAsIGludCBwcmV2KSB7CiAgICBpZihpID49IG4pIHJldHVybjsKICAgIAogICAgaW50IHJlcyA9IGdvKGksIHApOwogICAgaWYoZ28oaSArIDEsIHApID09IHJlcykgcmV0dXJuIGJ1aWxkKGkgKyAxLCBwLCBwcmV2KTsKICAgIGNvdXQgPDwgaSAtIHByZXYgKyAxIDw8ICcgJzsKICAgIGJ1aWxkKGkgKyAyLCBzW2kgKyAxXSAtICdhJywgaSArIDEpOwp9Cgp2b2lkIG1hZ2ljKCkgewogICAgY2luID4+IG4gPj4gczsKICAgIHMucHVzaF9iYWNrKCcjJyk7CiAgICAKICAgIG1lbXNldChkcCwgLTEsIHNpemVvZiBkcCk7CiAgICBpbnQgcmVzID0gZ28oMSwgc1swXSAtICdhJyk7CiAgICAKICAgIGlmKHJlcyA8PSAwKSB7CiAgICAgICAgY291dCA8PCAtMSA8PCBlbmRsOwogICAgICAgIHJldHVybjsKICAgIH0KICAgIAogICAgY291dCA8PCByZXMgPDwgZW5kbDsKICAgIGJ1aWxkKDEsIHNbMF0gLSAnYScsIDApOwp9CgpzaWduZWQgbWFpbigpIHsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCksIGNpbi50aWUoMCksIGNvdXQudGllKDApOwogICAgaW50IHQgPSAxOwogICAgd2hpbGUgKHQtLSkgbWFnaWMoKTsKfQ==