QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#219387#5037. 回文chenxinyang2006100 ✓4836ms69272kbC++1414.5kb2023-10-19 14:01:342023-10-19 14:01:35

Judging History

你现在查看的是最新测评结果

  • [2023-10-19 14:01:35]
  • 评测
  • 测评结果:100
  • 用时:4836ms
  • 内存:69272kb
  • [2023-10-19 14:01:34]
  • 提交

answer

#include <bits/stdc++.h>
#define rep(i,j,k) for(int i=(j);i<=(k);i++)
#define per(i,j,k) for(int i=(j);i>=(k);i--)
#define uint unsigned int
#define ll long long
#define ull unsigned long long
#define db double
#define ldb long double
#define pii pair<int,int>
#define pll pair<ll,ll>
#define mkp make_pair
#define eb emplace_back
#define SZ(S) (int)S.size()
#define mod 998244853
//#define mod 1000000007
#define inf 0x3f3f3f3f
#define linf 0x3f3f3f3f3f3f3f3f
using namespace std;

template <class T>
void chkmax(T &x,T y){
	if(x < y) x = y;
}

template <class T>
void chkmin(T &x,T y){
	if(x > y) x = y;
}

inline int popcnt(int x){
	return __builtin_popcount(x);
}

inline int ctz(int x){
	return __builtin_ctz(x);
}

template <int P>
class mod_int
{
    using Z = mod_int;

private:
    static int mo(int x) { return x < 0 ? x + P : x; }

public:
    int x;
    int val() const { return x; }
    mod_int() : x(0) {}
    template <class T>
    mod_int(const T &x_) : x(x_ >= 0 && x_ < P ? static_cast<int>(x_) : mo(static_cast<int>(x_ % P))) {}
    bool operator==(const Z &rhs) const { return x == rhs.x; }
    bool operator!=(const Z &rhs) const { return x != rhs.x; }
    Z operator-() const { return Z(x ? P - x : 0); }
    Z pow(long long k) const
    {
        Z res = 1, t = *this;
        while (k)
        {
            if (k & 1)
                res *= t;
            if (k >>= 1)
                t *= t;
        }
        return res;
    }
    Z &operator++()
    {
        x < P - 1 ? ++x : x = 0;
        return *this;
    }
    Z &operator--()
    {
        x ? --x : x = P - 1;
        return *this;
    }
    Z operator++(int)
    {
        Z ret = x;
        x < P - 1 ? ++x : x = 0;
        return ret;
    }
    Z operator--(int)
    {
        Z ret = x;
        x ? --x : x = P - 1;
        return ret;
    }
    Z inv() const { return pow(P - 2); }
    Z &operator+=(const Z &rhs)
    {
        (x += rhs.x) >= P && (x -= P);
        return *this;
    }
    Z &operator-=(const Z &rhs)
    {
        (x -= rhs.x) < 0 && (x += P);
        return *this;
    }
    Z operator-()
    {
        return -x;
    }
    Z &operator*=(const Z &rhs)
    {
        x = 1ULL * x * rhs.x % P;
        return *this;
    }
    Z &operator/=(const Z &rhs) { return *this *= rhs.inv(); }
#define setO(T, o)                                  \
    friend T operator o(const Z &lhs, const Z &rhs) \
    {                                               \
        Z res = lhs;                                \
        return res o## = rhs;                       \
    }
    setO(Z, +) setO(Z, -) setO(Z, *) setO(Z, /)
#undef setO
    
    friend istream& operator>>(istream& is, mod_int& x)
    {
        long long tmp;
        is >> tmp;
        x = tmp;
        return is;
    }
    friend ostream& operator<<(ostream& os, const mod_int& x)
    {
        os << x.val();
        return os;
    }
};

using Z = mod_int<mod>;
Z power(Z p,ll k){
    Z ans = 1;
    while(k){
        if(k % 2 == 1) ans *= p;
        p *= p;
        k /= 2;
    }
    return ans;
}

ull seed = 'x' + 'a' + 'y' + 't' + 'x' + 'd' + 'y';
ull rnd(){
	seed = seed * 1145141 + 1011451423;
	return seed;
}

int n,Q;
char s[200005];
ull P[2][200005];
Z eP[2][200005];

#define base 127
#define ibase 9150747060186627967llu

const int B = 447;
inline int from(int x){return (x + B - 1) / B;}
inline int L(int x){return x * B - B + 1;}
inline int R(int x){return x * B;}
ull val[2][300005],tag[2][550];
Z eval[2][300005],etag[2][550];
void init(){
	rep(i,1,n) val[0][i] = val[0][i - 1] + P[0][i] * s[i];
	rep(i,1,n) val[1][i] = val[1][i - 1] + P[0][i] * s[n + 1 - i];

	rep(i,1,n) eval[0][i] = eval[0][i - 1] + eP[0][i] * s[i];
	rep(i,1,n) eval[1][i] = eval[1][i - 1] + eP[0][i] * s[n + 1 - i];
}

void upd(int op,int pos,ull C){
	int fp = from(pos);
	rep(k,pos,R(fp)) val[op][k] += C;
	rep(k,fp + 1,from(n)) tag[op][k] += C;
}

ull qry(int op,int pos){
	return val[op][pos] + tag[op][from(pos)];
}

//
void eupd(int op,int pos,Z C){
	int fp = from(pos);
	rep(k,pos,R(fp)) eval[op][k] += C;
	rep(k,fp + 1,from(n)) etag[op][k] += C;	
}

Z eqry(int op,int pos){
	return eval[op][pos] + etag[op][from(pos)];	
}
//

void mdf(int pos,int C){
	upd(0,pos,P[0][pos] * C);
	upd(1,n - pos + 1,P[0][n - pos + 1] * C);

	eupd(0,pos,eP[0][pos] * C);
	eupd(1,n - pos + 1,eP[0][n - pos + 1] * C);
}

int rev;//rev 表示查询的都是反信息
int curL,curR;
ull _getval(int l,int r){
	return (qry(0,r) - qry(0,l - 1)) * P[1][l];
}

ull _getvalrev(int l,int r){
	l = n - l + 1;r = n - r + 1;
	swap(l,r);
	return (qry(1,r) - qry(1,l - 1)) * P[1][l];
}

//
Z _egetval(int l,int r){
	return (eqry(0,r) - eqry(0,l - 1)) * eP[1][l];	
}

Z _egetvalrev(int l,int r){
	l = n - l + 1;r = n - r + 1;
	swap(l,r);
	return (eqry(1,r) - eqry(1,l - 1)) * eP[1][l];	
}
//

int check(int l,int r){
	if(l < curL || r > curR) return 0;
	if(rev){
		l = n - l + 1;r = n - r + 1;
		swap(l,r);
	}
	return (_getval(l,r) == _getvalrev(l,r)) && (_egetval(l,r) == _egetvalrev(l,r));
}

ull getval(int l,int r){
	if(l < curL || r > curR) return rnd();

	if(rev) return _getvalrev(n - r + 1,n - l + 1);
	return _getval(l,r);
}

ull getvalrev(int l,int r){
	if(l < curL || r > curR) return rnd();

	if(rev) return _getval(n - r + 1,n - l + 1);
	return _getvalrev(l,r);
}

ull getval2(int l,int d){
	return getval(l,l + d - 1);
}

ull getvalrev2(int r,int d){
	return getvalrev(r - d + 1,r);
}

Z egetval(int l,int r){
	if(l < curL || r > curR) return rnd();

	if(rev) return _egetvalrev(n - r + 1,n - l + 1);
	return _egetval(l,r);
}

Z egetvalrev(int l,int r){
	if(l < curL || r > curR) return rnd();

	if(rev) return _egetval(n - r + 1,n - l + 1);
	return _egetvalrev(l,r);
}

Z egetval2(int l,int d){
	return egetval(l,l + d - 1);
}

Z egetvalrev2(int r,int d){
	return egetvalrev(r - d + 1,r);
}

int check2(int l,int r){//拓展到右端点 curR
	return check(l + r - curR,curR);
}

struct info{
	int l,r,d;
};

struct node{
	vector <info> pre,suf;//维护所有起始终止点
	int l,r;
}tree[530005];
#define ls (rt * 2)
#define rs (rt * 2 + 1)

int __frp;
int m;
info tmp[205];
void maintain(vector <info> &S){
	m = 0;
	if(__frp){
		cerr << "before maintain\n";
		for(info I:S) cerr << I.l << " " << I.r << " " << I.d << endl;
	}


	for(info I:S){
		if(I.l == I.r) I.d = 0;
		if(!m){
			tmp[++m] = I;
			continue;
		}
		if(!tmp[m].d || tmp[m].d == tmp[m].l - I.r){
			tmp[m].d = tmp[m].l - I.r;
			tmp[m].l = I.r;
			if(I.d) I.r -= I.d;
			else continue;
			if(I.l == I.r) I.d = 0;
		}else{
			tmp[++m] = I;
			continue;
		}
//		cerr << "tm\n";
//		cerr << I.l << " " << I.r << " " << I.d << endl;
		if(tmp[m].l - I.r == tmp[m].d){
			tmp[m].l = I.l;
			continue;
		}else{
			tmp[++m] = I;
		}
	}
	S.clear();
	rep(i,1,m) S.eb(tmp[i]);

	if(__frp){
		cerr << "result:\n";
		rep(i,1,m) cerr << tmp[i].l << " " << tmp[i].r << " " << tmp[i].d << endl;		
	}

}

vector <info> answer;
void mrg(node &p,node &q){
	assert(p.r + 1 == q.l);
	if(__frp){
		cerr << '[' << p.l << "," << p.r << "] [" << q.l << "," << q.r << "]\n";
		cerr << "psuf\n";
		for(info I:p.suf) cerr << I.l << " " << I.r << " " << I.d << endl;
		cerr << "qpre\n";
		for(info I:q.pre) cerr << I.l << " " << I.r << " " << I.d << endl;
		cerr << "qsuf\n";
		for(info I:q.suf) cerr << I.l << " " << I.r << " " << I.d << endl;		
	}


	answer = q.suf;
	info cur = answer.back();
	if(cur.l == q.l){
		if(cur.l == cur.r){
			answer.pop_back();
		}else{
			cur.l += cur.d;
			answer.pop_back();
			answer.eb(cur);
		}
	}

	curL = p.l;curR = q.r;
	int pl,pr,k,pos;
	reverse(q.pre.begin(),q.pre.end());
	for(info I:q.pre){
		if(I.l == I.r){
			pl = q.l - (q.r - I.l);
			pr = q.r;
//			if(__frp) cerr << "check range" << pl << " " << pr << endl;
			if(check(pl,pr)) answer.push_back({pl,pl,0});
			continue;
		}
		k = (I.r - I.l) / I.d;
		pl = I.r + 1;pr = q.r;
		if(pr - pl + 1 <= I.d && getval(I.l + 1,I.l + 1 + pr - pl) == getval(pl,pr) && egetval(I.l + 1,I.l + 1 + pr - pl) == egetval(pl,pr)){//[pl,pr] 是 [I.l + 1,I.l + I.d] 的前缀
			pos = 0;
//			if(__frp) cerr << p.r << " " << I.l + 1 << endl;
			per(_k,__lg(k),0) if(pos + (1 << _k) <= k && getvalrev2(p.r,(pos + (1 << _k)) * I.d) == getval2(I.l + 1,(pos + (1 << _k)) * I.d) && egetvalrev2(p.r,(pos + (1 << _k)) * I.d) == egetval2(I.l + 1,(pos + (1 << _k)) * I.d)) pos += 1 << _k;
//			if(__frp) cerr << getvalrev2(8,6) << " " << getval2(10,6) << endl << "!!" << pos << endl;
//			if(__frp) cerr << "prefix! " << pos << endl;
			if(pl > pr || (getvalrev2(p.r - pos * I.d,pr - pl + 1) == getval(pl,pr) && egetvalrev2(p.r - pos * I.d,pr - pl + 1) == egetval(pl,pr))) pos++;
			pos--;
			pos = k - pos;
//			if(__frp) cerr << pos << endl;
			if(pos <= k) answer.push_back({q.l + I.l - q.r + pos * I.d,q.l + I.l - q.r + k * I.d,I.d});
		}else{
			pos = 0;
			per(_k,__lg(k),0) if(pos + (1 << _k) <= k && getvalrev2(p.r,(pos + (1 << _k)) * I.d) == getval2(I.l + 1,(pos + (1 << _k)) * I.d) && egetvalrev2(p.r,(pos + (1 << _k)) * I.d) == egetval2(I.l + 1,(pos + (1 << _k)) * I.d)) pos += 1 << _k;
			if(check2(q.l,I.l + I.d * (k - pos))){
				pl = q.l + I.l + I.d * (k - pos) - q.r;
				answer.push_back({pl,pl,0});
			}
		}
	}
	reverse(q.pre.begin(),q.pre.end());
	if(check2(p.r,q.l)){
		pl = p.r + q.l - q.r;
		answer.push_back({pl,pl,0});
	}
	if(__frp){
		cerr << "partical result:\n";
		for(info I:answer) cerr << I.l << " " << I.r << " " << I.d << endl;		
	}
	for(info I:p.suf){
		if(I.l == I.r){
			pl = I.l + p.r - q.r;
			pr = q.r;
//			cerr << "check " << pl << " " << pr << endl;
			if(check(pl,pr)) answer.push_back({pl,pl,0});
			continue;
		}
		k = (I.r - I.l) / I.d;
		pos = 0;
		per(_k,__lg(k),0) if(pos + (1 << _k) <= k && getvalrev2(I.r - 1,(pos + (1 << _k)) * I.d) == getval2(q.l,(pos + (1 << _k)) * I.d) && egetvalrev2(I.r - 1,(pos + (1 << _k)) * I.d) == egetval2(q.l,(pos + (1 << _k)) * I.d)) pos += 1 << _k;
		pl = q.l + pos * I.d;
		pr = q.r;
		if(pr - pl + 1 <= I.d && getvalrev2(I.r - 1,pr - pl + 1) == getval(pl,pr) && egetvalrev2(I.r - 1,pr - pl + 1) == egetval(pl,pr)){
			if(__frp) cerr << "!!" << pos << endl;
			if(k - pos > 0) answer.push_back({I.r - (k - pos - 1) * I.d + p.r - q.r,I.r + p.r - q.r,I.d});
		}

		if(check2(I.r - (k - pos) * I.d,p.r)){
			pl = I.r - (k - pos) * I.d + p.r - q.r;
			answer.push_back({pl,pl,0});
		}
	}
/*	if(__frp){
		cerr << "result:\n";
		for(info I:answer) cerr << I.l << " " << I.r << " " << I.d << endl;		
	}*/
	maintain(answer);
	if(__frp){
		cerr << "result:\n";
		for(info I:answer) cerr << I.l << " " << I.r << " " << I.d << endl;		
	}
}

void rever(vector <info> &p){
	for(info &I:p){
		I.l = n + 1 - I.l;
		I.r = n + 1 - I.r;
		swap(I.l,I.r);
	}
}

node operator +(node &p,node &q){
	node ans;
	rev = 0;
	ans.l = curL = p.l;ans.r = curR = q.r;
//	if(p.l == 2 && q.r == 15) __frp = 1;
//	else __frp = 0;
	if(__frp) cerr << "merge suffix:\n";
	mrg(p,q);
	ans.suf = answer;
	
//	__frp = 0;
/*	if(p.l == 1 && q.r == 4){
		__frp = 1;
		cerr << "merge prefix:\n";
	}*/
//	__frp = 0;
	if(__frp) cerr << "merge prefix:\n";
	node tp = p,tq = q;
	rever(tp.pre);rever(tp.suf);
	rever(tq.pre);rever(tq.suf);
	swap(tp.pre,tq.suf);
	swap(tp.suf,tq.pre);
	tp.l = n + 1 - tp.l;tp.r = n + 1 - tp.r;
	tq.l = n + 1 - tq.l;tq.r = n + 1 - tq.r;
	swap(tp.l,tq.r);swap(tp.r,tq.l);
	rev = 1;
	mrg(tp,tq);

	rever(answer);
	ans.pre = answer;
	return ans;
}

void print(node &p){
	cerr << "range [" << p.l << "," << p.r << "] info\n";
	cerr << "pre palin\n";
	for(info I:p.pre) cerr << I.l << " " << I.r << " " << I.d << endl;
	cerr << "suf palin\n";
	for(info I:p.suf) cerr << I.l << " " << I.r << " " << I.d << endl; 
}

void vertify(int rt,int l,int r){
	rev = 0;
	curL = l;curR = r;
	for(info I:tree[rt].pre){
		if(!I.d) I.d = 114514;
		int pos = I.l;
		while(pos <= I.r){
			assert(l <= pos && pos <= r);
			if(!check(l,pos)) printf("fail vertify!! [%d,%d] %d %d\n",l,r,l,pos);
			assert(check(l,pos));
			pos += I.d;
		}
	}
	for(info I:tree[rt].suf){
		if(!I.d) I.d = 114514;
		int pos = I.r;
		while(pos >= I.l){
			assert(l <= pos && pos <= r);
			if(!check(pos,r)) printf("fail vertify!! [%d,%d]\n",l,r);
			assert(check(pos,r));
			pos -= I.d;
		}
	}
}

void build(int rt,int l,int r){
	if(l == r){
		tree[rt].l = tree[rt].r = l;
		tree[rt].pre.push_back({l,l,0});
		tree[rt].suf.push_back({l,l,0});
//		print(tree[rt]);
		return;
	}
	int mid = (l + r) >> 1;
	build(ls,l,mid);build(rs,mid+1,r);
	tree[rt] = tree[ls] + tree[rs];
//	vertify(rt,l,r);
//	print(tree[rt]);
}

void modify(int rt,int l,int r,int pos){
	if(l == r){
		tree[rt].l = tree[rt].r;
		tree[rt].pre.clear();tree[rt].suf.clear();
		tree[rt].pre.push_back({l,l,0});
		tree[rt].suf.push_back({l,l,0});
		return;
	}
	int mid = (l + r) >> 1;
	if(pos <= mid) modify(ls,l,mid,pos);
	else modify(rs,mid+1,r,pos);
	tree[rt] = tree[ls] + tree[rs];
}

node result;
void query(int rt,int l,int r,int L,int R){
	if(l == L && r == R){
		if(!result.l) result = tree[rt];
		else result = result + tree[rt];
		return;
	}
	int mid = (l + r) >> 1;
	if(R <= mid){
		query(ls,l,mid,L,R);
	}else if(L > mid){
		query(rs,mid+1,r,L,R);
	}else{
		query(ls,l,mid,L,mid);
		query(rs,mid+1,r,mid+1,R);
	}
}

int solve(int l,int r){
//	__frp = 1;
	result.l = result.r = 0;
	query(1,1,n,l,r);
//	__frp = 0;
	int _result = 0;
	for(info I:result.suf){
		if(I.d) _result += (I.r - I.l) / I.d + 1;
		else _result++;
	}
	return _result;
}

int main(){
//	freopen("test.in","r",stdin);
//	freopen("test.out","w",stdout);
	scanf("%s",s + 1);
	n = strlen(s + 1);
	P[0][0] = P[1][0] = 1;
	eP[0][0] = eP[1][0] = 1;
	rep(i,1,n){
		P[0][i] = P[0][i - 1] * base;
		P[1][i] = P[1][i - 1] * ibase;

		eP[0][i] = eP[0][i - 1] * base;
		eP[1][i] = eP[1][i - 1] / base;
	}
	init();
	build(1,1,n);
//	printf("qwq\n");

	int lastans = 0,op,l,r;
	char ch;
	scanf("%d",&Q);
	rep(i,1,Q){
		scanf("%d",&op);
		if(op == 1){
			scanf("%d",&l);
			l ^= lastans;
			assert(1 <= l && l <= n);
			do{
				scanf("%c",&ch);
			}while(ch < 'a' || ch > 'z');
			mdf(l,ch - s[l]);
			s[l] = ch;
			modify(1,1,n,l);
		}else{
			scanf("%d%d",&l,&r);
			l ^= lastans;r ^= lastans;
			assert(1 <= l && l <= r && r <= n);
			lastans = solve(l,r);
			printf("%d\n",lastans);
		}
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 10
Accepted

Test #1:

score: 10
Accepted
time: 28ms
memory: 41440kb

input:

aabbbabbbaaaaaaabbabbbaaaabaaaabbaabbaabbaaababbbabbbbabbbbaaaabbbabbbbbaaabbbabbaaaaabbbbbaaababbabbaaaaabaabbbbaaababaaabbaabbabbbabbbbaaaaabbbbbbbabbbaabbbabbabbbababbabbbbaaaaabbaababbbbaabbaaaaaabaaabbbaaababbbbaabaaaaababababbbbbbaaaabbbbaaababaaabbaabbbbbaaaabbaaaabaaaaaababbababaaaabaaababaa...

output:

2
3
5
3
3
3
2
3
4
2
4
2
4
2
3
3
3
2
2
2
2
2
2
3
4
2
2
3
2
2
4
3
3
2
3
3
4
3
3
4
4
2
3
4
2
2
4
2
4
3
2
2
2
3
3
3
4
4
3
3
2
3
3
2
3
3
4
2
2
4
2
3
2
3
3
2
3
2
2
3
2
2
3
6
2
2
3
7
4
3
2
2
2
2
3
4
4
4
4
2
2
3
2
4
2
2
2
3
3
2
2
2
2
3
3
4
3
2
3
3
2
2
4
5
4
2
2
5
3
3
3
3
2
4
2
3
2
3
3
3
2
4
4
5
2
2
3
5
3
3
...

result:

ok 2509 tokens

Test #2:

score: 0
Accepted
time: 44ms
memory: 41588kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

188
1078
673
914
360
4255
2205
3628
77
3608
230
494
128
848
801
1335
4079
3059
636
2882
3524
45
1174
506
3570
4172
1289
595
3829
1532
179
1274
2574
1098
2817
226
2580
887
989
1829
3656
181
2056
3315
786
117
2519
2742
3787
1080
3138
686
1605
239
1533
2658
2096
753
3400
219
1815
117
1645
52
1671
121
2...

result:

ok 2519 tokens

Test #3:

score: 0
Accepted
time: 42ms
memory: 41284kb

input:

bbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbbbbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbbbbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbbbbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbbabbba...

output:

12
8
12
24
30
18
11
8
32
18
10
32
26
11
11
15
18
6
18
19
13
21
10
13
20
16
10
10
10
9
16
11
32
14
24
20
29
15
10
17
10
8
8
22
31
9
9
18
25
10
14
16
22
24
15
15
11
13
33
7
13
21
7
19
12
12
17
7
23
15
2
10
16
15
9
14
6
18
10
8
18
20
21
5
11
18
3
17
13
17
8
11
17
7
6
7
11
10
9
20
9
28
19
10
14
11
24
8
...

result:

ok 5000 tokens

Test #4:

score: 0
Accepted
time: 29ms
memory: 38312kb

input:

mkmamkmlmkmamkmnmkmamkmlmkmamkmamkmamkmlmkmamkmnmkmamkmlmkmamkmumkmamkmlmkmamkmnmkmamkmlmkmamkmamkmamkmlmkmamkmnmkmamkmlmkmamkmkmkmamkmlmkmamkmnmkmamkmlmkmamkmamkmamkmlmkmamkmnmkmamkmlmkmamkmumkmamkmlmkmamkmnmkmamkmlmkmamkmamkmamkmlmkmamkmnmkmamkmlmkmamkmpmkmamkmlmkmamkmnmkmamkmlmkmamkmamkmamkmlmkma...

output:

5
8
5
6
5
6
7
7
5
8
5
5
6
5
9
6
5
6
7
8
5
5
8
6
4
5
8
5
8
4
6
4
5
6
5
1
5
7
4
5
7
3
5
8
9
6
4
5
5
4
7
7
5
7
8
7
6
5
7
1
5
5
6
6
6
6
7
6
6
4
5
5
6
3
8
7
5
6
6
7
4
4
7
7
6
6
7
8
6
7
7
4
7
6
8
3
5
7
3
6
7
6
4
7
6
4
5
6
6
4
6
7
4
5
5
5
4
4
5
6
3
4
4
5
4
7
5
4
9
6
5
5
3
4
5
8
4
5
5
6
4
6
6
6
4
9
7
4
6
6
...

result:

ok 5000 tokens

Test #5:

score: 0
Accepted
time: 33ms
memory: 37988kb

input:

babababababababababababababababababababababababababababababababbbabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbbabababababababababababababababababababababababababababababababbbabababababababababababababababababababababa...

output:

58
13
6
23
52
35
39
46
17
43
37
33
31
8
51
12
9
52
57
14
28
17
31
21
59
50
55
50
18
10
54
7
44
11
10
3
12
19
9
8
5
7
22
4
38
15
10
14
26
11
21
18
33
12
3
8
23
34
41
18
7
18
26
7
12
29
34
6
4
15
16
20
15
8
50
23
7
51
18
4
11
7
20
14
33
19
12
9
10
6
8
21
28
22
21
18
12
18
4
15
17
13
8
16
7
14
10
4
5
3...

result:

ok 2443 tokens

Test #6:

score: 0
Accepted
time: 32ms
memory: 41312kb

input:

aaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaabaabaaaaaaaa...

output:

43
25
18
13
12
27
16
18
22
24
13
20
34
18
5
27
26
27
8
10
6
9
9
14
22
15
34
25
19
24
19
18
13
7
21
14
2
33
7
46
16
18
19
12
25
8
7
14
22
2
2
12
19
3
20
15
18
10
8
8
8
12
5
12
18
22
7
15
16
36
21
11
11
14
8
13
12
2
5
40
14
15
2
5
11
4
12
16
11
9
9
6
6
18
16
11
15
18
13
15
8
24
19
9
5
15
18
8
13
5
31
...

result:

ok 2498 tokens

Test #7:

score: 0
Accepted
time: 41ms
memory: 41652kb

input:

baabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabcaaaaaaaacbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabba...

output:

67
7
4
13
81
3
8
92
28
86
94
92
71
23
73
26
24
13
71
88
98
42
70
45
82
63
5
80
57
49
48
77
88
5
98
96
65
52
11
24
52
51
76
90
9
10
58
43
36
48
82
73
10
14
90
54
74
12
32
36
71
46
8
46
20
38
22
68
54
73
66
32
95
63
52
7
40
97
27
13
42
59
41
14
9
44
53
52
92
30
36
27
86
90
59
95
12
36
42
16
24
58
23
5...

result:

ok 5000 tokens

Test #8:

score: 0
Accepted
time: 38ms
memory: 41704kb

input:

caaccaaccaaccabccbaccaaccaaccaaccaaccaaccaaccabccbaccaaccaaccaaccaaccaaccaaccabccbaccaaccaaccaaccaaccaaccaaccabccbaccaaccaaccaaccaaccaaccaaccabccbaccaaccaaccaaccaaccaaccaaccabccbaccaaccaaccaaccaaccaaccaaccabccbaccaaccaaccaaccaaccaaccaaccabccbaccaaccaaccaaccaaccaaccaaccabccbaccaaccaaccaaccaaccaaccaac...

output:

10
10
11
11
11
10
10
10
8
10
11
11
9
9
10
10
10
11
10
11
9
10
10
11
11
11
10
11
11
11
11
11
11
11
11
10
10
10
10
11
11
11
10
11
10
10
10
11
10
10
10
10
10
11
11
11
11
10
11
11
11
10
11
11
11
10
10
7
11
11
10
11
10
10
11
10
11
10
10
7
11
11
10
10
11
11
10
10
2
11
11
11
5
11
11
11
11
11
10
10
10
11
11...

result:

ok 1667 tokens

Test #9:

score: 0
Accepted
time: 44ms
memory: 41844kb

input:

cabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbbaccbaccabccabbbbbb...

output:

38
38
38
37
38
38
38
9
37
38
8
38
37
38
38
38
38
38
38
37
27
38
38
38
38
38
38
30
38
38
38
38
38
38
38
38
24
38
38
38
38
38
38
38
38
38
37
38
5
38
32
25
38
38
38
38
38
38
38
38
38
38
38
37
38
37
38
31
38
38
38
38
38
38
12
38
38
37
38
38
38
38
37
38
38
38
23
38
38
38
38
24
38
38
38
38
38
35
38
38
38
...

result:

ok 1667 tokens

Test #10:

score: 0
Accepted
time: 34ms
memory: 41460kb

input:

baaabbbaaabbbbaaababbababbabbbbaaaababaababbbbababababbbaabbbaababaaaababbbaaabaaababbababaaabbabbbaaabbabbbabaabaaaababbbbabbbbbaabbabbaaaabaaabababbbaababbbaaaaaababbabaaabaaaabbbabbbaababbbbbbbbaabbbaabbabaabababbaabaabaabbbbbaaababbbbabbbababababaabbababaabbabbbbbbaaaaaaabaabbabbabaabbbbbaaaaaba...

output:

3
3
2
3

result:

ok 4 tokens

Test #11:

score: 0
Accepted
time: 20ms
memory: 41116kb

input:

abbaaabaabbbaabbabbbbbbaabbbbabbaabababaabbabbabaaabbabbbaaaabbabbaabbbabbbabbababaaaabbabbaabababbbaaababaababbabbaaabbbaabaaaaaabbbabbababaabbbbbabbbaaaaaaabbaaaabaaababbababaabaaabbbaaabbaabbabbabbbababbabbbbbbbbaabbabbbabbbbbbbababaabbbaabaabaabaaabababbaabbbbaaabbbbabbaabbbabbbababaababbabbabba...

output:

3
4
2
2
4
2
2
4
3
5
2
2
3
4
3
2
3
4
6
2
2
2
2
2
5
3
4
3
3
2
2
2
2
5
2
3
2
3
2
3
2
3
2
4
2
2
3
2
2
3
5
2
2
7
3
2
3
2
3
3
2
2
3
4
3
2
4
2
2
2
3
3
3
3
3
2
3
3
3
5
2
4
2
3
3
3
3
3
3
2
4
4
3
4
2
2
3
3
6
2
5
4
2
2
4
2
5
3
3
2
5
4
3
3
3
3
4
3
2
3
2
4
2
3
6
3
3
2
3
3
2
3
3
5
2
3
4
3
5
3
3
3
3
4
2
3
3
2
3
2
...

result:

ok 4997 tokens

Test #12:

score: 0
Accepted
time: 15ms
memory: 41636kb

input:

lxxhwqorbxrdzedxlvymggyicczuafgyovixrzmptqfmjyjfpamcsehmfazbvfwdgeftgbtyurnnykwjhzfqqsyiyzkpwlmspjsxdkjtpgzbrvwwcjqejmuillhgtbhwtwmvhacfphrcgwoaihjzkuccmwuidivmpjcezbjywhbqtdgrhlrskcwmecflzpjbuutlocivcfvbcdvlnfchtvvcpoubnjwfwvzvpyvhkvxdmleyvucrondntpaonjybzarkgjnkuuvipkqgvwzzzopwyfnmodnmdziueescfttr...

output:

1
1
1
1
1
2
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
2
2
1
2
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
...

result:

ok 2493 tokens

Test #13:

score: 0
Accepted
time: 39ms
memory: 41648kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

849
1135
1444
1346
1445
536
3077
2631
1447
672
2214
2149
2090
4054
846
559
22
92
4224
161
2280
572
2347
2599
778
4093
750
3647
2142
642
474
1395
776
645
46
4141
2272
771
1564
207
4284
2896
3097
2829
306
1383
394
1776
1284
3933
102
510
1101
3639
1336
1292
2803
1159
601
1464
2585
673
281
1340
272
3310...

result:

ok 2478 tokens

Test #14:

score: 0
Accepted
time: 8ms
memory: 37860kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
5000
...

result:

ok 4999 tokens

Subtask #2:

score: 10
Accepted

Test #15:

score: 10
Accepted
time: 3175ms
memory: 68936kb

input:

aabababbabbbbbbabbababaaaabababbabbbbbbabbababaaaabababbabbbbbbabbababaaaabababbabbbbbbabbababaabbbaaabbaabbbbaabbaaabbbaabababbabbbbbbabbababaaaabababbabbbbbbabbababaaaabababbabbbbbbabbababaaaabababbabbbbbbabbababaabbaaabaaaaaabaaabbaabababbabbbbbbabbababaaaabababbabbbbbbabbababaaaabababbabbbbbbabb...

output:

41
43
154
118
55
165
48
163
119
207
147
145
33
67
114
124
154
9
104
307
102
73
39
364
79
177
53
39
88
264
77
114
79
195
150
153
157
46
129
136
147
25
309
11
12
258
259
133
355
50
116
336
13
127
18
34
122
161
38
99
290
92
355
166
59
152
41
182
103
282
166
23
86
173
32
122
60
127
287
20
83
214
119
144...

result:

ok 200000 tokens

Test #16:

score: 0
Accepted
time: 3422ms
memory: 68812kb

input:

beebbeebbeebbeebbeebddbeebbeebbeebbeebbeebbeebbeebbeebbeebbeebddbeebbeebbeebbeebbeebbeebbeebbeebbeebbeebddbeebbeebbeebbeebbeebbeebbeebbeebbeebbeebddbeebbeebbeebbeebbeebccbeebbeebbeebbeebbeebddbeebbeebbeebbeebbeebbeebbeebbeebbeebbeebddbeebbeebbeebbeebbeebbeebbeebbeebbeebbeebddbeebbeebbeebbeebbeebbeeb...

output:

38
55
18
35
62
44
48
20
70
35
36
42
40
11
14
13
67
54
61
70
51
27
62
18
39
52
53
53
34
57
53
46
28
22
15
64
32
44
11
11
57
35
21
45
32
39
42
27
31
51
28
31
18
12
25
41
55
37
42
17
38
33
21
29
54
15
43
24
17
42
63
19
32
49
17
21
50
62
52
56
49
56
18
24
17
22
26
18
60
31
24
59
58
69
18
16
38
39
54
48
...

result:

ok 200000 tokens

Test #17:

score: 0
Accepted
time: 2993ms
memory: 68964kb

input:

cgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagcaidiaaidiacgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccgaaaabgceiddiecgbaaaagccg...

output:

17
15
19
21
17
18
21
12
12
15
18
20
14
14
16
20
15
19
11
17
10
20
16
16
16
19
12
17
16
15
18
12
24
20
12
19
9
17
13
21
28
10
13
17
10
14
13
24
17
17
19
24
11
18
16
14
13
13
17
13
22
21
20
14
7
11
18
15
18
12
12
12
19
14
15
16
19
20
16
23
19
16
18
13
24
22
17
13
15
21
21
22
13
21
19
20
9
20
14
14
15
...

result:

ok 200000 tokens

Test #18:

score: 0
Accepted
time: 2258ms
memory: 68956kb

input:

rprxrprmrprxrprkrprxrprmrprxrprhrprxrprmrprxrprkrprxrprmrprxrprwrprxrprmrprxrprkrprxrprmrprxrprhrprxrprmrprxrprkrprxrprmrprxrprvrprxrprmrprxrprkrprxrprmrprxrprhrprxrprmrprxrprkrprxrprmrprxrprwrprxrprmrprxrprkrprxrprmrprxrprhrprxrprmrprxrprkrprxrprmrprxrprbrprxrprmrprxrprkrprxrprmrprxrprhrprxrprmrprx...

output:

7
8
5
9
9
6
8
8
7
7
8
12
4
9
8
8
9
11
10
9
8
10
5
6
5
10
11
6
6
10
7
3
12
9
6
12
10
7
13
9
10
8
7
7
9
9
13
9
11
11
7
11
5
5
3
9
10
7
10
12
11
12
9
9
11
12
8
4
6
8
12
10
5
4
7
10
4
7
6
4
8
6
5
9
7
9
12
10
8
11
7
11
8
7
8
6
8
9
8
10
9
5
8
5
11
8
8
7
5
3
11
8
10
6
10
10
8
9
4
5
9
8
7
10
7
4
7
10
11
9
9...

result:

ok 200000 tokens

Test #19:

score: 0
Accepted
time: 4836ms
memory: 68816kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998...

result:

ok 200000 tokens

Test #20:

score: 0
Accepted
time: 3000ms
memory: 68880kb

input:

susjsusosusjsusgsusjsusosusjsusmsusjsusosusjsusgsusjsusosusjsusnsusjsusosusjsusgsusjsusosusjsusmsusjsusosusjsusgsusjsusosusjsusysusjsusosusjsusgsusjsusosusjsusmsusjsusosusjsusgsusjsusosusjsusnsusjsusosusjsusgsusjsusosusjsusmsusjsusosusjsusgsusjsusosusjsusisusjsusosusjsusgsusjsusosusjsusmsusjsusosusj...

output:

11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
...

result:

ok 200000 tokens

Subtask #3:

score: 10
Accepted

Test #21:

score: 10
Accepted
time: 2051ms
memory: 68408kb

input:

abbaaaabbabaaaaaabaabbaabbababbaaabbabbbabaabaabaaaaabaabbbbabbabbabbbababbbababababbbbabaabbaaababbbbbababbbbaabbbaaabaababababaabbbbbbaababaabbaaabaabbaaababbabbabbbbaaaaabaaabbbabbbbbbabbbabbabaabbbbbbbaaaabbaaaababbbaaaaaaababaabbbbaaabaaabbaabbbbbbababbaabbaaabbabbbbbabaababbaabaaaabbbbabababba...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
8
8
8
8
...

result:

ok 198 tokens

Test #22:

score: 0
Accepted
time: 1467ms
memory: 68288kb

input:

abbaababbabababbbbabababbbaaaabababbbbaabaabbbbabbbabbaabababbbabaaabbabbaabbbbbbaaababaababbbaabbbbaabbbaaaaaabaabbaabbaaaabaaabbaabbbaabbbababbbabbaaababaabaaabaabbabababaaaabaabbbbaaabbbbbbabbbbababbaabaabbbbabbaaabbaabaabbaabaabaaaaaabbaaabbbbbabbbbbaaabbabbabbaababaaabbabbaaaaaabbababbbaabbaabb...

output:

2
6
2
2
3
2
2
3
4
3
4
3
2
8
2
3
2
4
4
4
3
2
4
3
4
4
2
3
3
3
3
2
13
4
2
5
5
3
3
2
2
4
2
3
3
4
3
2
2
3
3
2
2
6
3
4
3
3
2
2
2
3
2
3
3
4
3
2
2
3
2
4
3
5
5
3
3
2
2
3
3
2
3
4
5
2
2
3
2
5
3
2
5
3
5
3
3
2
5
3
3
4
4
2
2
3
4
2
2
2
2
3
3
2
2
5
3
2
3
3
4
2
6
3
2
13
2
2
2
3
2
2
4
2
3
2
3
3
4
4
5
4
3
2
12
2
2
3
2...

result:

ok 199806 tokens

Test #23:

score: 0
Accepted
time: 1894ms
memory: 68816kb

input:

bbabbbaaaaabbbbabaabbaabbaabbbaabbabaaabaaabbbbabbbabaabbbbbbbabbbaabbbabbabaabababaaababaabaaabaabbbabbbbbabbbbbbbbbbbaaabaaaaabaaaaababbaaaaabbabaaabbabaabababaabbbabbbbaabaabbaaabaabbaabbbbbababbabaabbbbaaabaaaababbabbaaaabbabaabbabbbbbababbabbbaaabababbababbbaabbbbabbbbaaabbabbaaabbaaababbabaaab...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 199800 tokens

Test #24:

score: 0
Accepted
time: 1538ms
memory: 68560kb

input:

bababaaaaabbabbbbababbbbbbababbbbbaaaabbabbbbabaaababbababbaaabbabababbabbaabbabbbaababbbabaaaabbabbababbabbbabababbabbaabbbaabaabaabbbaabbabbabbababbabbaaabbbabababababaababaababbbaaababbbaababbbbabaaabaaabbababaaabbbbbaabababbbbbaabaaaaababaaabaababbaaababbbbabbbbbaababbababbbbabaabbabbbabaaaabbbb...

output:

3
2
2
2
4
2
2
4
2
3
2
4
4
2
3
2
2
2
3
3
3
3
3
2
4
5
4
2
3
2
3
2
3
2
2
3
3
3
3
3
3
3
2
3
2
3
3
3
2
4
3
3
2
2
3
5
2
3
3
3
3
2
4
4
3
2
2
2
7
3
3
2
4
2
5
5
4
3
2
4
2
2
2
2
3
4
2
6
5
3
2
4
3
3
3
3
5
3
4
2
2
2
2
2
3
2
3
3
4
5
3
2
2
2
2
3
5
2
4
2
3
2
5
3
2
3
2
3
3
2
3
2
2
2
3
2
2
2
3
3
4
2
4
4
3
5
5
3
4
2
...

result:

ok 199800 tokens

Test #25:

score: 0
Accepted
time: 2107ms
memory: 68320kb

input:

aaabaaababbbabaaaababbbaabaaaabababaaabbaaaabbbbbabbaabbbbbbabbabbbaabaaaabbbabbbbbbbbaabbaaaaaabbabbaabbaaaaaabaaaabbbbbbaabbaabaaabbbaaaaaaabbbabaaaaabbbabbbaaabaaaabababaaaaaaabaaabaababbbbabbbabbbaabbbbaaaabbbbaababaababaaabbaabbbaabbabaabaaabbabaaababbaaaaabaaaabbbbabaaabbbaaaaabababbabaabbabab...

output:

3
2
3
3
2
2
3
3
2
4
2
4
3
4
3
2
3
2
2
4
2
2
2
3
2
3
2
2
2
3
4
4
3
2
2
6
2
4
3
4
4
3
2
2
5
2
2
3
4
3
3
3
7
4
3
4
3
2
4
4
4
4
3
3
3
2
2
2
3
3
2
3
6
2
2
3
3
2
2
2
2
2
2
3
2
3
2
5
4
3
3
3
2
3
3
4
2
2
4
4
2
3
3
2
6
3
2
3
4
3
2
3
3
2
3
2
2
3
4
3
4
3
2
3
3
2
2
2
3
5
2
3
3
3
2
2
2
4
2
2
4
3
2
2
3
3
3
2
2
2
...

result:

ok 211 tokens

Test #26:

score: 0
Accepted
time: 1457ms
memory: 68816kb

input:

ababaaabaabbbaabbaabaaaabaaabaabbababbababaabbaabbbbaaabaabaabaaaabaababbbaabbabbaaabaabbaabababbbababbabaaaabbabbbbbbaabababbbbababbaaabaaababbbbaabbaaaabbbbaaabbbabbabbaabbbbababbaabaabbabbababbabbaababbbaaaaababbaabbbbabaabbbabbbbbaaababbaaabbbbaaababbaababaaabaaabaababbabaabaabbbbaaaaabbababaaab...

output:

3
2
2
3
3
5
3
4
3
3
2
3
4
2
3
4
3
3
3
2
3
4
2
4
2
3
2
2
2
3
3
4
3
2
3
3
4
4
3
2
3
3
3
2
3
2
3
3
5
2
2
2
4
3
3
2
2
2
5
4
3
7
2
3
2
5
3
2
3
3
3
3
3
2
2
4
3
3
2
2
2
2
3
2
7
3
2
3
3
2
2
3
2
2
3
3
4
3
4
3
4
3
2
2
3
3
3
4
3
5
5
2
2
3
4
5
3
3
5
3
2
2
3
2
8
3
5
5
3
3
2
3
4
2
2
4
2
2
2
2
2
4
4
3
4
3
3
2
3
2
...

result:

ok 199782 tokens

Subtask #4:

score: 10
Accepted

Test #27:

score: 10
Accepted
time: 1098ms
memory: 68772kb

input:

babbaaabbbbbbbabbbababaabbbbbababababbaabaabbbbbbabbbbbbbbbbababbbbabbaabbbaabaabbabbbaabbabbbabbababaababbbabbbbaabbabbabbaaaabbbaaabbbbaabbaaaaaaabbbabbbaaabaababaaabaaaabaaaababaaaaababaaaabaabbaaaabbbabbaabaabbbabbbbbaaabaababbbaaaaabbbbaaabbbbaabbabbbbabbbabbaaaaabaabaaaabbbabbbbbaabbbbabbbbaab...

output:

4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
...

result:

ok 100490 tokens

Test #28:

score: 0
Accepted
time: 1721ms
memory: 68836kb

input:

lqdvhpozemuhtibmunxftkdjjdktfxnumbithumezophvdqllqdvhpozemuhtibmunxftkdjjdktfxnumbithumezophvdqlfibyjjybiflqdvhpozemuhtibmunxftkdjjdktfxnumbithumezophvdqllqdvhpozemuhtibmunxftkdjjdktfxnumbithumezophvdqlewwelqdvhpozemuhtibmunxftkdjjdktfxnumbithumezophvdqllqdvhpozemuhtibmunxftkdjjdktfxnumbithumezophvd...

output:

487
218
218
140
154
154
148
148
64
64
334
160
7
7
7
7
7
7
7
101
101
91
91
6
6
442
143
429
121
113
113
54
33
33
33
33
172
172
149
33
33
33
33
33
33
33
355
355
355
338
272
272
57
57
57
57
29
29
29
29
29
109
109
9
9
9
9
9
9
9
238
238
238
238
163
163
163
194
194
186
186
83
83
406
266
79
79
79
79
79
79
7...

result:

ok 66667 tokens

Test #29:

score: 0
Accepted
time: 1724ms
memory: 68872kb

input:

vbghxazviovddvoivzaxhgbvvbghxazviovddvoivzaxhgbvwwxxlwqetrlgyolqqloyglrteqwlxxwwvbghxazviovddvoivzaxhgbvvbghxazviovddvoivzaxhgbvvbghxazviovddvoivzaxhgbvvbghxazviovddvoivzaxhgbvwwxxlwqetrlgyolqqloyglrteqwlxxwwvbghxazviovddvoivzaxhgbvvbghxazviovddvoivzaxhgbvvbghxazviovddvoivzaxhgbvvbghxazviovddvoivzax...

output:

13
8
13
5
5
5
13
12
5
5
5
5
5
5
5
5
12
12
12
12
12
12
12
13
9
9
5
13
13
12
12
12
12
12
12
13
13
13
13
13
12
12
12
13
13
13
13
13
12
12
12
12
12
13
5
5
13
13
13
13
13
13
13
12
12
12
12
11
6
6
13
5
13
13
13
13
11
11
11
11
8
8
8
8
8
8
8
13
13
13
13
13
5
5
5
5
5
13
12
12
9
9
9
9
9
9
9
12
12
12
12
12
12
...

result:

ok 66667 tokens

Test #30:

score: 0
Accepted
time: 2127ms
memory: 68852kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000
200000...

result:

ok 66667 tokens

Test #31:

score: 0
Accepted
time: 826ms
memory: 69108kb

input:

ghiifdahihabedjhaaagicjebeaeaefagddbhdjijffjeebbhhheghafibahfcegfeccfhejdhceiiihfeccbdgjdiddhbbdafjhiejbbaihdddhcgcebgdibhbeididbcabjgghdhgajidbfbfehabfaggifgabhfjcehgjhhcfiihhdhgchacicdeahjcjcjcdfdbfigdfeghacfgafahifegafheibbdieadaijeahfhadiefajgchjefhicaaificdafifadcfddahadhbaegdchhijefdbhgicfggfc...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 100279 tokens

Test #32:

score: 0
Accepted
time: 2031ms
memory: 68320kb

input:

jheehjebdaaeffadebbedaffeaadbejheehjjheehjebdaaeffadebbedaffeaadbejheehjjheehjebdaaeffadebbedaffeaadbejheehjjheehjebdaaeffadebbedaffeaadbejheehjjheehjebdaaeffadebbedaffeaadbejheehjjheehjebdaaeffadebbedaffeaadbejheehjjheehjebdaaeffadebbedaffeaadbejheehjjheehjebdaaeffadebbedaffeaadbejheehjjheehjebdaae...

output:

21
21
21
21
21
21
21
21
17
21
21
21
21
21
21
21
21
20
21
20
20
21
21
21
21
21
20
21
21
21
21
21
21
21
21
20
21
21
21
21
21
21
21
21
21
21
21
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
13
21
21
21
21
20
21
21
21
21
21
21
21
21
21
21
14
21
21
21
21
21
21
21
21
21
21
21
21
17
21
...

result:

ok 66666 tokens

Test #33:

score: 0
Accepted
time: 2274ms
memory: 68996kb

input:

babaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababaababaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababbabaababaababaababbabaababbabaababbabaababbabaababbabaababbabaabab...

output:

56
46
69
41
76
76
36
76
57
76
76
54
76
76
60
32
30
76
76
49
76
76
76
76
27
53
72
76
76
64
76
76
29
57
47
76
29
76
76
76
76
36
74
76
76
76
76
76
76
76
76
27
76
76
15
76
76
76
76
46
49
76
76
62
76
66
76
76
76
76
74
70
76
50
51
76
76
76
76
76
76
76
41
76
61
76
76
70
42
44
76
76
35
73
35
76
76
57
76
76
...

result:

ok 66666 tokens

Test #34:

score: 0
Accepted
time: 2533ms
memory: 68460kb

input:

abbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaabbaabbaabbaabbaaaab...

output:

4079
4079
513
513
513
513
513
11113
11113
3338
1846
1846
1846
4331
2774
4198
4198
4198
4198
2320
2320
2320
11113
11113
1054
1054
1054
1054
1054
1054
1054
1054
11113
11113
5955
5955
5955
5955
4318
4318
4318
4318
4318
4318
11113
11113
10532
10532
5226
5226
5226
3399
3399
3399
3399
3399
11113
11113
111...

result:

ok 66667 tokens

Subtask #5:

score: 30
Accepted

Dependency #1:

100%
Accepted

Test #35:

score: 30
Accepted
time: 1083ms
memory: 68888kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

199105
199317
198628
198977
198643
198338
198952
198567
198980
198350
199045
199831
199124
199126
199123
199367
198992
198131
198623
199391
199376
199431
198418
198674
199222
199031
198833
198400
199208
198925
198477
198700
198952
199129
199580
199549
198972
199285
199185
198739
199281
199208
198920...

result:

ok 24945 tokens

Test #36:

score: 0
Accepted
time: 1210ms
memory: 69072kb

input:

abbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaabbaaaabbaabbaaaabbaabbaaaabbaabbaaaab...

output:

48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
...

result:

ok 50000 tokens

Test #37:

score: 0
Accepted
time: 1152ms
memory: 68888kb

input:

bbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbabbbaabbaabbbabbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbbbbbbabaababbbbbbbabbbaabbaabbb...

output:

1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
1029
...

result:

ok 49950 tokens

Test #38:

score: 0
Accepted
time: 1294ms
memory: 68840kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998...

result:

ok 49947 tokens

Test #39:

score: 0
Accepted
time: 693ms
memory: 68832kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

200000
200000
38385
38385
33776
33776
4138
200000
200000
200000
200000
78010
200000
200000
125726
125726
125726
125726
125726
125726
125726
125726
68615
68615
68615
40794
40794
40793
40793
199213
199213
194729
185537
185537
64215
64215
64215
64215
21860
21861
21861
21861
21861
21861
200000
192672
13...

result:

ok 16668 tokens

Test #40:

score: 0
Accepted
time: 654ms
memory: 69044kb

input:

bbabbaabbabbbbabbaabbabbabbabbabbaabbabbbbabbaabbabbbbabbaabbabbbbabbaabbabbabbabbabbaabbabbbbabbaabbabbbbabbaabbabbbbabbaabbabbabbabbabbaabbabbbbabbaabbabbbbabbaabbabbbbabbaabbabbabbabbabbaabbabbbbabbaabbabbbaaabbbbbbbbbbbbbbbbaaabbbabbaabbabbbbabbaabbabbabbabbabbaabbabbbbabbaabbabbbbabbaabbabbbbab...

output:

49
49
49
49
42
42
42
42
42
42
49
40
49
49
49
42
42
42
42
42
42
37
37
37
37
37
49
49
44
44
44
44
44
44
44
44
49
41
41
41
41
41
49
49
49
49
49
45
45
49
45
45
45
45
45
41
41
41
41
44
44
44
44
36
36
36
36
49
49
49
48
48
48
48
44
49
49
43
43
39
49
49
49
49
49
49
49
49
49
49
49
49
49
47
47
47
20
20
49
43
...

result:

ok 16667 tokens

Test #41:

score: 0
Accepted
time: 707ms
memory: 68932kb

input:

aaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabbbaaaaaabbbaaaabb...

output:

265
85
85
85
85
85
85
85
75
75
75
75
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
169
168
168
168
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
144
144
144
111
111
111
111
111...

result:

ok 16685 tokens

Test #42:

score: 0
Accepted
time: 568ms
memory: 69272kb

input:

bdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbadggdabdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbadggdabdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbadggdabdcaacdbbdcaacdbbdcaacdbbdcaacdbbdcaacdbbd...

output:

30
29
25
25
25
24
22
22
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
33
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
18
18
18
18
18
18
18
...

result:

ok 16679 tokens

Test #43:

score: 0
Accepted
time: 945ms
memory: 68944kb

input:

babaaababaababaaababbabaaababaababaaababbbbbbabaaababaababaaababbabaaababaababaaababbabaaababaababaaababbabaaababaababaaababbbbbbabaaababaababaaababbabaaababaababaaababbabaababbabaaababaababaaababbabaaababaababaaababbbbbbabaaababaababaaababbabaaababaababaaababbabaaababaababaaababbabaaababaababaaabab...

output:

27
27
27
27
26
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
15
15
15
15
15
15
15
15
15
15
15
27
27
23
23
23
23
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
27
27
27
27
27
26
26
...

result:

ok 16688 tokens

Test #44:

score: 0
Accepted
time: 1011ms
memory: 68712kb

input:

babbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbaabbbaaaabbbaabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabbaabbabbabb...

output:

42
25
43
32
26
33
38
39
49
45
45
38
24
22
11
11
49
46
27
43
33
43
31
41
24
54
42
42
59
42
28
42
37
34
41
34
48
37
35
34
27
37
44
27
23
29
19
18
39
18
38
47
36
39
28
56
30
37
29
25
22
29
24
49
25
19
27
44
31
42
43
49
44
30
57
48
41
51
26
47
37
25
28
31
45
47
35
38
40
32
34
45
41
51
51
34
38
25
44
30
...

result:

ok 16667 tokens

Test #45:

score: 0
Accepted
time: 1008ms
memory: 69076kb

input:

aaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaabaaaabaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaabaaaabaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaabaaaabaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaaaabaabaaaba...

output:

21
21
22
21
8
18
19
23
22
20
15
18
15
25
18
19
6
21
21
13
26
12
15
22
16
18
19
13
16
13
17
8
14
13
18
23
24
13
12
15
17
9
9
20
19
14
12
17
16
17
11
19
15
15
24
24
19
22
16
25
28
12
12
19
17
23
15
14
17
25
21
14
17
32
11
22
19
14
19
20
13
17
16
14
15
18
12
18
23
10
11
17
22
21
16
11
22
21
13
15
4
18
...

result:

ok 16668 tokens

Test #46:

score: 0
Accepted
time: 810ms
memory: 69164kb

input:

dbhiihbddbhiihbddbhiihbddbhiihbddbhiihbdicfhbbhfcidbhiihbddbhiihbddbhiihbddbhiihbddbhiihbddbhiihbddbhiihbddbhiihbddbhiihbddbhiihbdicfhbbhfcidbhiihbddbhiihbddbhiihbddbhiihbddbhiihbdaeahcdeiijebbejiiedchaeadbhiihbddbhiihbddbhiihbddbhiihbddbhiihbdicfhbbhfcidbhiihbddbhiihbddbhiihbddbhiihbddbhiihbddbhiih...

output:

12
10
12
7
11
11
8
10
12
19
16
20
13
16
19
17
10
16
14
11
17
14
9
14
14
14
11
9
7
10
16
10
8
14
9
17
13
13
14
13
11
17
12
12
16
7
11
14
13
8
12
10
16
13
4
14
11
9
9
7
4
5
10
13
14
9
4
8
15
14
11
16
12
12
15
11
17
8
8
14
10
14
11
9
11
11
14
14
4
13
9
5
6
8
11
13
4
5
8
9
8
7
13
5
6
11
6
10
6
9
9
4
2
1...

result:

ok 16668 tokens

Test #47:

score: 0
Accepted
time: 509ms
memory: 69204kb

input:

cgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgccgjeffejgc...

output:

61
101
115
22
36
54
92
86
56
71
34
69
52
38
74
43
56
82
89
86
68
77
96
64
95
59
35
35
80
40
41
42
95
36
88
84
64
96
40
60
64
40
53
41
33
86
33
35
60
76
88
31
57
87
24
43
15
32
32
63
77
62
74
29
33
17
23
3
41
23
20
19
19
15
24
50
18
58
29
79
80
20
66
33
66
16
56
80
26
30
3
33
65
29
35
61
20
27
33
56
...

result:

ok 24884 tokens

Test #48:

score: 0
Accepted
time: 684ms
memory: 69152kb

input:

onnoaidkndogsuusgodnkdiaonnoonnoaidkndogsuusgodnkdiaonnotixntqllqtnxitonnoaidkndogsuusgodnkdiaonnoonnoaidkndogsuusgodnkdiaonnoonnoaidkndogsuusgodnkdiaonnoonnoaidkndogsuusgodnkdiaonnotixntqllqtnxitonnoaidkndogsuusgodnkdiaonnoonnoaidkndogsuusgodnkdiaonnoonnoaidkndogsuusgodnkdiaonnoonnoaidkndogsuusgodn...

output:

10
13
9
12
10
12
12
12
11
10
12
8
9
9
8
10
10
10
6
7
9
10
6
9
5
8
5
9
8
6
9
9
7
8
9
14
10
14
10
10
11
9
7
4
5
7
6
5
8
6
3
6
7
8
5
8
9
9
6
7
2
6
1
6
7
8
9
6
5
4
6
4
8
7
5
1
6
7
8
6
8
5
5
7
3
6
6
4
5
8
6
5
6
5
7
8
8
7
9
10
11
11
12
13
8
9
11
11
11
10
10
11
10
6
11
10
10
13
6
9
7
8
6
7
9
6
10
6
4
10
9
...

result:

ok 16667 tokens

Test #49:

score: 0
Accepted
time: 728ms
memory: 68996kb

input:

mnmymnmsmnmymnmpmnmymnmsmnmymnmrmnmymnmsmnmymnmpmnmymnmsmnmymnmpmnmymnmsmnmymnmpmnmymnmsmnmymnmrmnmymnmsmnmymnmpmnmymnmsmnmymnmpmnmymnmsmnmymnmpmnmymnmsmnmymnmrmnmymnmsmnmymnmpmnmymnmsmnmymnmpmnmymnmsmnmymnmpmnmymnmsmnmymnmrmnmymnmsmnmymnmpmnmymnmsmnmymnmumnmymnmsmnmymnmpmnmymnmsmnmymnmrmnmymnmsmnmy...

output:

10
9
5
9
7
7
10
6
7
6
10
7
10
10
10
8
6
6
8
6
9
6
7
7
9
10
9
7
3
12
7
11
9
9
5
10
5
8
3
3
5
7
6
9
5
6
8
9
7
8
4
7
8
3
7
8
10
8
6
7
5
9
7
9
6
8
9
7
8
7
12
7
9
9
9
7
9
11
8
10
10
7
10
9
6
9
10
8
6
6
8
7
11
12
7
11
10
7
10
12
10
8
7
10
8
4
5
4
8
8
12
9
6
9
10
9
6
10
9
8
6
8
9
5
7
9
5
6
9
5
4
6
6
5
4
5
...

result:

ok 16670 tokens

Test #50:

score: 0
Accepted
time: 1021ms
memory: 69184kb

input:

aaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaaaaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaaaaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaaaaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaabaaabaaabaaaaaaab...

output:

19
15
18
14
15
13
16
19
12
13
14
11
14
18
12
12
12
15
11
9
16
10
17
14
18
13
11
16
12
14
11
15
15
10
16
18
17
11
15
15
9
17
9
16
14
9
8
14
9
6
9
11
6
14
13
13
16
16
13
17
16
13
14
16
15
15
13
11
9
14
16
15
14
10
7
9
18
11
9
11
13
10
10
14
12
12
11
14
9
8
9
13
12
13
14
12
10
11
14
9
14
10
11
8
7
12
1...

result:

ok 16672 tokens

Test #51:

score: 0
Accepted
time: 614ms
memory: 68472kb

input:

iiiiiiiiiiiiiiiioxpoopxoiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiioxpoopxoiiiiiiiiiiiiiiiipokkopiiiiiiiiiiiiiiiioxpoopxoiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiioxpoopxoiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiioxpoopxoiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiioxpoopxoiiiiiiiiiiiiiiiipokkopiiiiiiiiiiiiiiiioxpoopxoiiiiiiiiiiiiiiiiiiiiiiii...

output:

271
252
259
144
132
121
135
139
127
127
144
123
127
117
119
123
132
135
134
129
128
143
134
124
143
132
131
135
117
129
122
143
143
130
132
127
120
150
132
54
32
30
53
42
32
56
53
44
33
47
44
42
47
40
54
43
35
41
44
44
50
50
59
58
41
43
32
45
44
48
42
42
30
32
36
54
48
35
39
33
40
33
32
42
33
49
36
...

result:

ok 25053 tokens

Test #52:

score: 0
Accepted
time: 535ms
memory: 68328kb

input:

aaaabbabbbbaaaaabaaaaabbbaabbbababaababbabaaaabbbabbaabbaabbbbbaabbabbbaababbbbaabababaabbbbaaabbbaaabbaaaaaabbbbbbbbbaabbbbababaabbbbbbbbabbabaaaaabbabbabaabaabbaabaababaabbbababbaabaabbbabbabbbabaabaababbaaaaabbbbababbabaaaabbbabababbbabababaaaababbabbaabbabababbbabbaaaaaabaabaaaaabababbaaaaaabbaa...

output:

3
2
2
2
7
2
2
3
2
2
2
2
2
3
2
2
5
3
3
3
3
3
3
4
2
3
3
3
4
3
3
3
3
3
3
3
6
3
2
3
3
3
3
3
2
3
2
2
2
2
2
3
2
3
4
3
3
3
4
4
3
5
2
2
3
6
3
5
2
3
2
2
4
2
4
3
3
2
3
3
3
2
2
2
2
3
3
3
2
2
2
4
3
4
4
2
3
2
2
3
2
3
5
4
4
3
2
2
3
3
3
2
2
8
3
3
4
2
2
2
3
2
3
2
3
4
2
3
2
5
3
3
4
2
2
7
2
3
2
3
2
3
2
3
3
3
5
2
3
2
...

result:

ok 25068 tokens

Test #53:

score: 0
Accepted
time: 1183ms
memory: 68844kb

input:

bbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbbbbbabaabbbabaabbaababbbaababbb...

output:

1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
1869
...

result:

ok 50000 tokens

Subtask #6:

score: 30
Accepted

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Dependency #3:

100%
Accepted

Dependency #4:

100%
Accepted

Dependency #5:

100%
Accepted

Test #54:

score: 30
Accepted
time: 4075ms
memory: 68948kb

input:

aaabbbbaaaabbababababaaaabbaababbaabbbbbaabaabbbaabbbbbbabaabbabbabbbabbbaababbabbabaabbaaabaabbaabaabaaabaaabaaabababaaabaaabaaabababaaabaaabaaabababaaabaaabaaabababaaabaaabaaabababaaabaaabaaabababaaabaaabaaabababaaabaaabaaabaaabaaabaaabaaabababaaabaaabaaabababaaabaaabaaabababaaabaaabaaabababaaabaa...

output:

63
57
57
66
60
61
57
65
63
57
63
63
57
58
63
64
62
64
70
63
66
60
61
58
66
65
66
59
62
63
64
61
62
65
55
60
42
35
64
70
65
59
61
63
69
66
63
64
60
66
61
60
71
70
68
66
64
60
64
67
66
62
64
57
60
66
57
57
57
62
72
65
66
8
9
12
13
11
9
61
62
66
58
59
57
55
59
61
57
60
70
67
68
63
61
62
59
62
69
65
65
...

result:

ok 66668 tokens

Test #55:

score: 0
Accepted
time: 2341ms
memory: 68944kb

input:

dxmfzlvuwncphcahvijhtnkfizssjrayggdicoanmrizudjeitvpqcvclquwjhbkygpcmvohxcjugsawwmetsheitjkevkwtcfwedodgdodmdodgdodidodgdodmdodgdodcdodgdodmdodgdodidodgdodmdodgdodtdodgdodmdodgdodidodgdodmdodgdodcdodgdodmdodgdodidodgdodmdodgdodjdodgdodmdodgdodidodgdodmdodgdodcdodgdodmdodgdodidodgdodmdodgdodtdodgdodm...

output:

8
6
6
6
8
8
9
6
7
8
5
7
9
6
7
8
7
5
7
10
7
8
10
3
6
6
7
6
9
7
6
4
5
6
9
6
7
6
5
6
5
5
8
10
6
6
8
6
4
8
6
4
10
7
5
8
6
9
3
7
4
7
7
6
7
6
7
8
7
7
6
8
5
6
5
5
6
6
6
6
6
6
6
6
5
6
5
8
7
8
8
7
8
7
5
8
7
7
8
7
5
8
9
7
5
8
7
10
6
7
9
6
4
6
5
7
6
7
8
5
8
10
6
7
5
9
6
8
4
4
5
7
3
5
6
5
7
6
5
4
5
5
2
6
8
7
5
...

result:

ok 66688 tokens

Test #56:

score: 0
Accepted
time: 3922ms
memory: 68616kb

input:

bbbabbaabaabaabbabbabbbbaaaaabaabbbaaaabaabbaaaaababbabbaababababbaaababbbabbbbaababbbaaaabaaaaababbaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaa...

output:

24
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
24
23
...

result:

ok 66677 tokens

Test #57:

score: 0
Accepted
time: 4003ms
memory: 69140kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

199687
199687
192865
65217
65217
65217
65217
65217
65217
65217
65217
49568
49568
49568
49568
49568
49568
49568
49568
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
1693
169...

result:

ok 66679 tokens

Test #58:

score: 0
Accepted
time: 4046ms
memory: 68824kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

119845
119845
119845
84253
84253
84253
84253
84253
84253
84253
84253
74828
74828
74828
48309
48309
48309
48309
4202
4202
4202
4202
4202
4202
4202
4202
4202
4202
4202
4202
4202
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201
4201...

result:

ok 66688 tokens

Test #59:

score: 0
Accepted
time: 3795ms
memory: 68624kb

input:

babaaaaabaaababbaababbbbaabaababbbaabbbbaabaabbaaabaaababbabaababbbbbaaabbabababbbabbaabbbaababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

98
36
36
36
37
104
94
39
67
46
53
125
84
55
111
60
74
20
82
56
21
28
56
141
86
101
99
34
17
15
63
85
4
52
141
132
11
27
29
59
47
29
104
27
74
51
18
39
115
106
115
16
37
89
25
18
53
88
33
13
119
17
25
17
8
60
6
101
58
15
50
39
62
22
33
11
24
73
31
72
74
39
56
14
75
56
97
83
32
118
96
57
96
67
82
33
2...

result:

ok 66684 tokens

Test #60:

score: 0
Accepted
time: 3389ms
memory: 68952kb

input:

gefebiccghjfaaggfgfhddbbfjieeieddigaebfbhjbbicehghihdcdghddhidgebggbfagcijcfadjeiicahcaihhfjicfjedgbajdccccdjaajdccccdjaajdccccdjahcaiiachajdccccdjaajdccccdjaajdccccdjaajdccccdjaajdccccdjaajdccccdjahcaiiachajdccccdjaajdccccdjaajdccccdjaajdccccdjaajdccccdjaajdccccdjahcaiiachajdccccdjaajdccccdjaajdccc...

output:

1158
2025
167
958
89
100
420
298
83
303
105
49
2243
1653
110
165
609
24
57
288
283
34
85
20
81
18
212
131
158
91
85
50
160
20
73
6
255
37
45
5
84
1
168
36
105
205
250
7
8
208
13
49
41
126
10
67
204
103
63
137
136
18
22
51
90
71
23
117
3
8
76
45
72
19
37
7
114
57
4
78
11
142
49
73
17
56
69
9
56
29
48...

result:

ok 66682 tokens

Test #61:

score: 0
Accepted
time: 4826ms
memory: 68492kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998
199998...

result:

ok 199791 tokens

Test #62:

score: 0
Accepted
time: 2007ms
memory: 68648kb

input:

ababbbbbaaaaababbabbbbbbbbbabaababbbaabaaaaabbbbaaaaababbaaabaababaabaaabbbabbaababaabbbbbbaabbbabbbabbaabaaaabaababbbbbbabababaababaabbbbabababbbbbaaaaaabbabbaaaabbbaabababaabaaabbaaababbbbbaaabbabbbaaabbaaabaabaaaaababaaaaabbaabaabaabbbabaaaababaaaaabaabbbaabbbbbbbbbbbaaaabaabbbbabababbaabaabaaabb...

output:

3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
...

result:

ok 99891 tokens

Test #63:

score: 0
Accepted
time: 1844ms
memory: 68860kb

input:

ababbbbbbaabbaaabbabbaabbbbaaabaaaaaabbbbababaabbbabaabaabababbaaaaaababbbbabaabbbaabaabaababbabaaabaabaaaaabaaabaabaaaaabaaaabaabaaabaaabaaaababaaaaaababaabbaabbbbabaababababaaaabaaabaabaaabaaabaabbbaaabbaababababaaaabaaaaababaaabaaaabaabbaaababaabaaabbabaaabaaaabbaabbabbababbababbababbbbabaaaaaabb...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 199793 tokens

Test #64:

score: 0
Accepted
time: 2085ms
memory: 68840kb

input:

abbbbabbbabababbbbbabaabbaabbabbabbbabbaabbbbbabbbabbaaaabbabbbbbabbbbaaabbabbabbaabbaabbaabbbbbabaabaaaaaaaabaababbaabaabaababbaaaabaaaabaaabaaaabbaabaaabababbabbaaabbaaabbaabaaabbbaaaaabbbabaaaabaabbababbaaabbabbabbabbbbabbbaaaaababaabaaabbaaabaaaabbaabaabbabbbabbabbabbbbbbababaabbbbbbaabbbaabaaab...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
...

result:

ok 187 tokens

Test #65:

score: 0
Accepted
time: 4057ms
memory: 68864kb

input:

baababbbbbaaaaaaaaabbbbabaaaabbaabbbbbbbaabbbbaabbabbabbbbbbaabbababbaabaaababbbabbbbbaababbbaababaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaa...

output:

30
13
12
24
28
21
27
33
47
30
35
12
27
37
13
25
29
29
33
37
35
31
22
17
29
38
30
30
50
17
48
29
40
34
34
36
34
25
33
35
45
43
23
10
24
35
48
23
31
20
9
19
40
38
32
33
28
45
20
36
18
31
27
23
30
46
32
24
22
19
29
29
33
32
21
16
34
25
29
15
4
19
27
12
19
30
34
42
11
27
18
20
13
18
14
12
26
19
19
24
46...

result:

ok 66673 tokens

Test #66:

score: 0
Accepted
time: 2092ms
memory: 68948kb

input:

bbaaabaabbbbbbbbabababbabbbbaaabbabbababbaaaabbbbbaaaaaaaababbbababbbababbbbbababbabbbabababbbabbbaabbbbbbbaaabbbbaabbbbabbbababbbaaabbbbabbbbabaaabbaaabbaabaabbababbbbabababbaaaaababaabaabaabababaabaaaababbabbaabaabaaaabbbbaaababaaaaaaabbababbaaabbabbabbaabaaaabbaababbabaaaabaabbabbbaabababbbbababb...

output:

3
2
2
4
2
2
3
3
4
3
2
3
3
3
2
3
5
2
9
2
3
2
2
4
3
2
2
4
2
5
2
2
2
3
3
3
2
2
3
4
3
5
3
4
2
4
4
2
3
6
2
3
2
6
2
4
4
2
3
2
3
2
2
4
3
2
2
3
2
3
2
3
3
3
3
3
5
5
2
3
3
2
2
2
2
2
2
2
4
2
6
3
3
2
4
7
3
4
5
2
3
5
3
4
2
3
3
2
2
5
3
2
3
4
6
4
5
3
5
4
3
2
3
2
2
7
4
5
2
3
2
3
2
3
4
3
3
3
2
2
2
2
3
3
2
2
2
3
2
3
...

result:

ok 184 tokens

Test #67:

score: 0
Accepted
time: 1496ms
memory: 68940kb

input:

baaabaabababbbabaababaaaabbbbbbabaabaabaabbbaabbabbaababbbabaaaaabaaaabbaabbaabbbabababbbbbabbbaabbbbbabaabbaabbbababbbaaaaabaabaabbaaaabbbbabbabbbabbaaababbabaaabbaababbaababababbbbbbbbabbaaaaaaaababbbabababababbbaaabaaababaabaaabbabbabbbbaabbaaaaabbbbaaabbbbbabaaabbabbbbbbabababaaabbbabbbaabbaaaaa...

output:

3
3
8
2
2
4
2
3
3
2
2
3
2
3
5
2
2
2
3
3
4
3
5
2
2
3
3
6
8
3
3
3
3
3
3
3
3
3
2
3
3
3
3
6
2
3
3
3
10
2
3
5
3
3
3
3
3
3
2
4
2
2
3
2
3
3
3
5
2
2
2
2
3
5
2
3
2
3
6
3
4
2
4
4
8
2
3
5
3
3
3
4
4
2
4
3
2
3
2
3
2
2
5
2
4
3
2
2
4
2
3
2
2
3
3
2
2
2
3
4
3
4
2
4
3
2
2
2
3
4
4
2
2
2
4
5
3
5
2
2
2
2
2
2
2
2
11
3
3
...

result:

ok 199806 tokens

Test #68:

score: 0
Accepted
time: 3390ms
memory: 69144kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

36630
105077
177122
52347
8360
167604
125721
51897
78145
117960
57866
165190
4310
60791
30189
845
53783
83716
43869
35624
65210
7297
168605
69459
16716
40106
45446
57248
48594
58584
20921
164853
63627
14664
14186
105781
69729
93979
101466
112518
12935
54470
18632
85233
43327
986
108848
33070
86545
5...

result:

ok 199821 tokens

Test #69:

score: 0
Accepted
time: 3467ms
memory: 68916kb

input:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

11671
21887
29064
58258
37840
51982
5302
86017
24582
106128
41464
132965
19088
81658
98689
46648
138539
49785
46852
73930
51839
40472
11714
71827
104340
37354
182556
78057
81846
18068
15631
78659
36605
1136
32377
181262
47010
74838
44289
34109
25331
26053
94909
63673
37949
60604
50734
12595
47842
22...

result:

ok 186 tokens

Test #70:

score: 0
Accepted
time: 2135ms
memory: 69044kb

input:

baaaaabaaaaababbbaababbaabaabbaababbaabbbbbaabababaabbaaaabbbaaababababaaaaaaabaaabaabbaabaaaabbaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbbbbbaaabaabaaabbb...

output:

19
41
12
8
4
5
3
5
9
10
6
4
2
6
6
3
6
2
4
2
2
4
3
3
7
8
5
4
3
2
3
2
7
3
3
3
6
3
3
3
3
3
2
3
3
3
2
4
2
4
4
5
3
4
2
5
5
4
3
4
2
3
4
3
3
4
3
4
3
3
2
2
4
3
2
2
3
5
2
3
3
4
2
6
6
2
3
3
3
3
3
6
4
3
2
2
3
3
3
2
3
3
3
3
2
2
3
4
2
3
2
2
3
3
3
2
6
2
3
2
3
3
3
3
4
3
8
2
3
3
6
4
4
3
4
4
4
4
4
3
4
3
2
4
4
3
2
3
...

result:

ok 232 tokens

Test #71:

score: 0
Accepted
time: 3173ms
memory: 69120kb

input:

bbbbabbbabaababbaaaaabbababbabbbaabbbaabbaabaaababbaaabbbabbababaaabbbaaaaabbabbaabababbaaababaabaaabbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbbaabbbb...

output:

1386
1261
3612
2382
427
4420
1624
1738
1169
3597
156
1846
1699
1937
5055
3300
2952
2391
1620
2096
2018
1047
2954
2415
1810
2454
5156
3708
943
1697
1636
1191
61
1204
1931
993
375
1578
2669
2367
3706
1267
2707
151
2505
1654
233
5462
4090
2704
3537
1580
2113
2619
292
3924
1509
824
2865
326
336
3232
208...

result:

ok 199805 tokens

Test #72:

score: 0
Accepted
time: 2774ms
memory: 68860kb

input:

adicidehaeajcdagjajbajdbheahccdifbfejhebdfjhbehgbeebadejafibhifhgagadcjjjdehfhfcgcgcegegedafdjhieahgccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajccccjaajccggccjaajcccc...

output:

38
57
28
46
26
16
16
44
21
23
23
68
29
41
66
7
53
70
21
7
68
18
42
58
10
13
21
65
62
3
39
36
27
47
71
39
52
20
58
34
71
45
62
20
46
30
27
27
60
23
10
19
54
60
51
32
28
67
12
32
59
47
42
61
71
11
32
47
31
22
34
44
28
35
58
59
26
24
76
24
68
6
68
10
30
62
40
64
32
50
39
52
28
43
8
19
43
60
11
57
44
58...

result:

ok 199803 tokens

Test #73:

score: 0
Accepted
time: 2742ms
memory: 69020kb

input:

dyilaeqflarmaaalrnphepapuexhovmhpcidbzrshmntpoqlbknivkbmrmzoetsjaoentqwgyhoprqhnhtehobgbkbmizqqbvwvdcsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccsiisccs...

output:

432
15224
3872
11074
10318
1348
7818
3688
9916
1650
4283
3376
12469
15614
6264
7302
4994
3701
14774
7685
5816
3933
2222
3523
6547
5761
16981
2490
4476
673
11871
964
3457
10725
6223
1046
4028
8334
3083
6819
7437
17391
1821
11303
5123
1247
3547
13380
149
1184
16152
6111
1900
8476
17322
11322
5101
1180...

result:

ok 199799 tokens

Test #74:

score: 0
Accepted
time: 3343ms
memory: 68264kb

input:

aaadabbbadcbbdcbddbaccdaadbccdcabdbdbddacaddccbbacadabbcbabbdcbdcccdbbcddaabaddababdddcbadaddcaaabaddcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcdadcdcdcdcdcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcdadcdcdcdddcdcdcda...

output:

13
17
11
21
12
17
17
12
15
12
15
14
13
11
21
14
15
17
7
9
13
8
13
15
14
15
18
12
7
14
13
15
11
14
8
18
20
13
16
11
15
8
10
12
9
18
15
5
13
7
8
8
10
20
13
6
16
12
11
10
14
13
10
9
10
9
13
7
21
11
17
22
15
8
19
10
25
23
15
14
11
21
19
8
10
13
17
10
7
9
14
10
21
10
11
13
13
10
20
15
13
13
10
16
11
13
1...

result:

ok 66669 tokens

Test #75:

score: 0
Accepted
time: 2493ms
memory: 69228kb

input:

cjbfhbiccgabafjcfbedhifabdghjgfdgcbbibgeicdfiffiahhjdfcjdciaacjedjcjgegeefbiabheejafcfijijjbdddigaacgighgigfgighgigcgighgigfgighgigdgighgigfgighgigcgighgigfgighgigjgighgigfgighgigcgighgigfgighgigdgighgigfgighgigcgighgigfgighgigfgighgigfgighgigcgighgigfgighgigdgighgigfgighgigcgighgigfgighgigjgighgigf...

output:

9
8
8
10
9
7
8
13
8
9
10
9
9
7
8
9
11
8
9
8
7
12
7
8
8
10
10
8
9
8
11
9
8
7
8
9
10
11
9
5
10
9
10
9
8
10
6
8
8
8
9
7
5
7
9
9
8
6
9
10
7
12
8
11
9
9
9
8
9
9
7
8
7
10
8
7
9
6
7
7
10
8
7
7
6
6
9
10
7
8
6
7
6
7
5
8
6
10
8
8
7
8
7
6
6
8
8
7
7
8
8
6
7
8
6
8
5
8
6
9
9
8
8
8
7
6
9
7
9
9
5
9
9
6
7
9
8
10
10
...

result:

ok 66669 tokens

Test #76:

score: 0
Accepted
time: 2469ms
memory: 68948kb

input:

bgmqortthglkarjqagajsocpkpqketkasiosbclhfceagqsfdihehhcacaandednbtbojgsqlfthnqhkkesqlmdgbfjfqsnoibhfchcschcgchcschcschcschcgchcschctchcschcgchcschcschcschcgchcschcqchcschcgchcschcschcschcgchcschctchcschcgchcschcschcschcgchcschchchcschcgchcschcschcschcgchcschctchcschcgchcschcschcschcgchcschcqchcschcg...

output:

10
7
8
9
9
7
6
4
7
6
6
8
8
8
7
5
7
7
8
6
5
8
5
7
6
5
6
7
6
6
8
6
6
8
6
7
6
7
9
8
8
7
11
9
5
3
5
7
5
4
7
1
7
4
4
1
4
6
7
5
3
5
8
4
4
7
7
6
7
7
4
6
7
8
6
5
8
7
6
8
6
5
8
4
7
8
5
2
7
8
11
8
6
9
6
8
3
7
10
7
6
10
10
9
6
9
7
6
5
5
11
9
9
6
8
7
9
9
8
5
6
8
7
8
7
6
7
8
8
9
7
9
7
6
7
7
9
8
7
6
7
6
5
5
9
4
8...

result:

ok 66670 tokens

Extra Test:

score: 0
Extra Test Passed