QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#449989#5037. 回文waretle100 ✓6483ms131572kbC++1416.0kb2024-06-21 21:54:382024-06-21 21:54:39

Judging History

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

  • [2024-06-21 21:54:39]
  • 评测
  • 测评结果:100
  • 用时:6483ms
  • 内存:131572kb
  • [2024-06-21 21:54:38]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const int N=2e5+5,mod1=998244353,mod2=1e9+7;
int qpow(int a,int b,int m)
{
    int c=1;
    for(;b;b>>=1,a=1ll*a*a%m)
        if(b&1)c=1ll*c*a%m;
    return c;
}
struct hash_val
{
    ll v1;
    hash_val(){v1=0;}
    hash_val(int x){v1=x;}
//    hash_val(int x,int y){v1=x,v2=y;}
    void operator+=(const hash_val&a){v1+=a.v1,v1>=mod1&&(v1-=mod1);}
    void operator-=(const hash_val&a){v1-=a.v1,v1<0&&(v1+=mod1);}
    void operator*=(const hash_val&a){v1=1ll*v1*a.v1%mod1;}
    hash_val operator+(const hash_val&a)const{hash_val c=*this;c+=a;return c;}
    hash_val operator-(const hash_val&a)const{hash_val c=*this;c-=a;return c;}
    hash_val operator*(const hash_val&a)const{hash_val c=*this;c*=a;return c;}
    bool operator==(const hash_val&a)const{return v1==a.v1;}
    bool operator!=(const hash_val&a)const{return v1!=a.v1;}
}pw[N],ipw[N];
const hash_val base={114514},ibase={137043501};
//struct hash_val
//{
//    int v1,v2;
//    hash_val(){v1=v2=0;}
//    hash_val(int x){v1=v2=x;}
//    hash_val(int x,int y){v1=x,v2=y;}
//    void operator+=(const hash_val&a){v1+=a.v1,v2+=a.v2;v1>=mod1&&(v1-=mod1),v2>=mod2&&(v2-=mod2);}
//    void operator-=(const hash_val&a){v1-=a.v1,v2-=a.v2,v1<0&&(v1+=mod1),v2<0&&(v2+=mod2);}
//    void operator*=(const hash_val&a){v1=1ll*v1*a.v1%mod1,v2=1ll*v2*a.v2%mod2;}
//    hash_val operator+(const hash_val&a)const{hash_val c=*this;c+=a;return c;}
//    hash_val operator-(const hash_val&a)const{hash_val c=*this;c-=a;return c;}
//    hash_val operator*(const hash_val&a)const{hash_val c=*this;c*=a;return c;}
//    bool operator==(const hash_val&a)const{return v1==a.v1&&v2==a.v2;}
//    bool operator!=(const hash_val&a)const{return v1!=a.v1||v2!=a.v2;}
//}pw[N],ipw[N];
//const hash_val base={114514,1919811},ibase={137043501,83769705};
struct String
{
    hash_val vl;
    int len;
};
vector<hash_val>coef[N];
String operator+(const String&a,const String&b){return {a.vl+b.vl*pw[a.len],a.len+b.len};};
String operator*(const String&a,int b){return {a.vl*coef[a.len][b],a.len*b};}
bool operator==(const String&a,const String&b){return a.vl==b.vl&&a.len==b.len;}
bool operator!=(const String&a,const String&b){return a.vl!=b.vl||a.len!=b.len;}
struct ___
{
    ___()
    {
        pw[0]=ipw[0]=hash_val(1);
        for(int i=1;i<N;++i)pw[i]=pw[i-1]*base,ipw[i]=ipw[i-1]*ibase;
        for(int i=1;i<N;++i)
        {
            coef[i].resize(N/i+1);
            for(int j=1;j*i<N;++j)
                coef[i][j]=coef[i][j-1]+pw[(j-1)*i];
        }
    }
}____;
namespace DS
{
hash_val pre[N],bpre[N],suf[N],bsuf[N];
int n,bl[N],L[N],R[N];
char a[N];
const int S=400;
void init(int N,char*s)
{
    n=N;
    for(int i=1;i<=n;++i)a[i]=s[i];
    for(int i=1;i<=n;++i)bl[i]=(i+S-1)/S;
    for(int i=1;i<=bl[n];++i)L[i]=i*S-S+1,R[i]=min(i*S,n);
    for(int i=1;i<=n;++i)
        if(i==L[bl[i]])pre[i]=hash_val(s[i]);
        else pre[i]=pre[i-1]+hash_val(s[i])*pw[i-L[bl[i]]];
    for(int i=n;i>=1;--i)
        if(i==R[bl[i]])suf[i]=hash_val(s[i]);
        else suf[i]=suf[i+1]+hash_val(s[i])*pw[R[bl[i]]-i];
    for(int i=1;i<=bl[n];++i)
        bpre[i]=bpre[i-1]+pre[R[i]]*pw[R[i-1]];
    for(int i=bl[n];i>=1;--i)
        bsuf[i]=bsuf[i+1]+suf[L[i]]*pw[n-R[i]];
}
void modify(int x,char c)
{
    hash_val dlt=hash_val(c)-hash_val(a[x]);a[x]=c;
    hash_val tmp=dlt*pw[x-L[bl[x]]];
    for(int i=x;i<=R[bl[x]];++i)
        pre[i]+=tmp;
    tmp=dlt*pw[R[bl[x]]-x];
    for(int i=x;i>=L[bl[x]];--i)
        suf[i]+=tmp;
    tmp=dlt*pw[x-1];
    for(int i=bl[x];i<=bl[n];++i)
        bpre[i]+=tmp;
    tmp=dlt*pw[n-x];
    for(int i=bl[x];i>=1;--i)
        bsuf[i]+=tmp;
}
hash_val getpre(int l,int r)
{
    if(l<1||r>n)return hash_val(-1);
    if(l==r+1)return hash_val(0);
    auto calcblock=[&](int l,int r)
    {
        int x=bl[l];//assert(x==bl[r]);
        return (pre[r]-pre[l!=L[x]?l-1:0])*ipw[l-L[x]];
    };
    hash_val ret=0;
    if(bl[l]<bl[r])
    {
        ret+=calcblock(l,R[bl[l]]);
        if(bl[l]+1<bl[r])ret+=(bpre[bl[r]-1]-bpre[bl[l]])*ipw[l-1];
        ret+=pre[r]*pw[L[bl[r]]-l];
    }
    else ret=calcblock(l,r);
    return ret;
}
hash_val getsuf(int l,int r)
{
    if(l<1||r>n)return hash_val(-1);
    if(l==r+1)return hash_val(0);
//    if(l>r)assert(0);
    // cerr<<l<<' '<<r<<'\n';
    auto calcblock=[&](int l,int r)
    {
        int x=bl[l];//assert(x==bl[r]);
        return (suf[l]-suf[r!=R[x]?r+1:0])*ipw[R[x]-r];
    };
    hash_val ret=hash_val(0);
    if(bl[l]<bl[r])
    {
        ret+=calcblock(L[bl[r]],r);
        if(bl[l]+1<bl[r])ret+=(bsuf[bl[l]+1]-bsuf[bl[r]])*ipw[n-r];
        ret+=suf[l]*pw[r-R[bl[l]]];
    }
    else ret=calcblock(l,r);
    return ret;
}
}//namespace DS
namespace DS2
{
hash_val pre[N],bpre[N],suf[N],bsuf[N];
int n,bl[N],L[N],R[N];
char a[N];
const int S=400;
void init(int N,char*s)
{
    n=N;
    for(int i=1;i<=n;++i)a[i]=s[i];
    for(int i=1;i<=n;++i)bl[i]=(i+S-1)/S;
    for(int i=1;i<=bl[n];++i)L[i]=i*S-S+1,R[i]=min(i*S,n);
    for(int i=1;i<=n;++i)
        if(i==L[bl[i]])pre[i]=hash_val(s[i]);
        else pre[i]=pre[i-1]+hash_val(s[i])*pw[i-L[bl[i]]];
    for(int i=n;i>=1;--i)
        if(i==R[bl[i]])suf[i]=hash_val(s[i]);
        else suf[i]=suf[i+1]+hash_val(s[i])*pw[R[bl[i]]-i];
    for(int i=1;i<=bl[n];++i)
        bpre[i]=bpre[i-1]+pre[R[i]]*pw[R[i-1]];
    for(int i=bl[n];i>=1;--i)
        bsuf[i]=bsuf[i+1]+suf[L[i]]*pw[n-R[i]];
}
void modify(int x,char c)
{
    hash_val dlt=hash_val(c)-hash_val(a[x]);a[x]=c;
    hash_val tmp=dlt*pw[x-L[bl[x]]];
    for(int i=x;i<=R[bl[x]];++i)
        pre[i]+=tmp;
    tmp=dlt*pw[R[bl[x]]-x];
    for(int i=x;i>=L[bl[x]];--i)
        suf[i]+=tmp;
    tmp=dlt*pw[x-1];
    for(int i=bl[x];i<=bl[n];++i)
        bpre[i]+=tmp;
    tmp=dlt*pw[n-x];
    for(int i=bl[x];i>=1;--i)
        bsuf[i]+=tmp;
}
hash_val Getpre(int l,int r)
{
    if(l<1||r>n)return hash_val(-1);
    if(l==r+1)return hash_val(0);
    auto calcblock=[&](int l,int r)
    {
        int x=bl[l];//assert(x==bl[r]);
        return (pre[r]-pre[l!=L[x]?l-1:0])*ipw[l-L[x]];
    };
    hash_val ret=hash_val(0);
    if(bl[l]<bl[r])
    {
        ret+=calcblock(l,R[bl[l]]);
        if(bl[l]+1<bl[r])ret+=(bpre[bl[r]-1]-bpre[bl[l]])*ipw[l-1];
        ret+=pre[r]*pw[L[bl[r]]-l];
    }
    else ret=calcblock(l,r);
    return ret;
}
hash_val Getsuf(int l,int r)
{
    if(l<1||r>n)return hash_val(-1);
    if(l==r+1)return hash_val(0);
    auto calcblock=[&](int l,int r)
    {
        int x=bl[l];//assert(x==bl[r]);
        return (suf[l]-suf[r!=R[x]?r+1:0])*ipw[R[x]-r];
    };
    hash_val ret=hash_val(0);
    if(bl[l]<bl[r])
    {
        ret+=calcblock(L[bl[r]],r);
        if(bl[l]+1<bl[r])ret+=(bsuf[bl[l]+1]-bsuf[bl[r]])*ipw[n-r];
        ret+=suf[l]*pw[r-R[bl[l]]];
    }
    else ret=calcblock(l,r);
    return ret;
}
}//namespace DS2
using DS::getpre;
using DS::getsuf;
using DS2::Getpre;
using DS2::Getsuf;
char s[N];
int n;
struct info{int l,r,d;};
ostream&operator<<(ostream&a,info b){return a<<b.l<<' '<<b.r<<' '<<b.d;}
struct node{vector<info>pre,suf;int l,r;}tr[N*4];
ostream&operator<<(ostream&a,node b)
{
    a<<b.l<<' '<<b.r<<'\n';
    for(info i:b.pre)cerr<<i.l<<' '<<i.r<<' '<<i.d<<'\n';
    cerr<<'\n';
    for(info i:b.suf)cerr<<i.l<<' '<<i.r<<' '<<i.d<<'\n';
    return a;
}
String getprestr(int l,int r){return {getpre(l,r),r-l+1};}
String getsufstr(int l,int r){return {getsuf(l,r),r-l+1};}
String Getprestr(int l,int r){return {Getpre(l,r),r-l+1};}
String Getsufstr(int l,int r){return {Getsuf(l,r),r-l+1};}
void maintain(vector<info>&v,int lim)
{
//    for(int i=1;i<v.size();++i)assert(v[i].l>=v[i-1].r);
    while(v.back().l>lim)v.pop_back();
    if(v.back().r>lim)v.back().r=(lim-v.back().l)/v.back().d*v.back().d+v.back().l;
    vector<pair<int,int>>t;
    for(int i=0;i<v.size();++i)
    {
        if(i)t.emplace_back(v[i].l-v[i-1].r,1);
        else t.emplace_back(v[i].l,1);
        if(v[i].l<v[i].r)t.emplace_back(v[i].d,(v[i].r-v[i].l)/v[i].d);
    }
    t.erase(partition(t.begin(),t.end(),[&](auto x){return x.first>0;}),t.end());
    v.clear();
    int sum=0;
    for(int l=0,r;l<t.size();l=r+1)
    {
        int num=t[l].second;
        r=l;while(r+1<t.size()&&t[l].first==t[r+1].first)num+=t[++r].second;
        v.push_back({sum+t[l].first,sum+num*t[l].first,t[l].first}),sum+=num*t[l].first;
    }
    assert(v.size()<=20);
}
vector<info>mergepre(const node&a,const node&b)
{
    assert(a.r==b.l-1);
    vector<info>ret=a.pre;
    int lena=a.r-a.l+1,lenb=b.r-b.l+1;
    auto work=[&](int x)
    {
        if(x>lena+lenb)return;
        int m=x+1>>1;
        if(getpre(a.l,a.l+m-1)==getsuf(a.l+x-m,a.l+x-1))
            ret.push_back({x,x,0});
    };
    for(int I=a.suf.size()-1;I>=0;--I)
    {
        info i=a.suf[I];
        if(i.l==i.r)work(2*lena-i.l);
        else
        {
			int tmp=(i.r-i.l)/i.d;
            String B=getsufstr(a.r-i.l-i.d+1,a.r-i.l);
            String C=getsufstr(a.l,a.r-i.r);
            int num=0;
            for(int i=__lg(min(tmp,lenb/B.len)+1);~i;--i)
            {
                int nlen=(num|1<<i)*B.len;
                if(nlen<=lenb&&B*(num|1<<i)==getprestr(b.l,b.l+nlen-1))
                    num|=1<<i;
            }
            if(C.len<B.len&&getsufstr(a.r-i.l-C.len+1,a.r-i.l)==C)
            {
                if(num*B.len+C.len<=lenb&&getprestr(b.l+num*B.len,b.l+num*B.len+C.len-1)==C)
                    ++num;
                if(num)
                    ret.push_back({lena*2-i.r,lena*2-max(i.l,i.r-(num-1)*B.len),i.d});
            }
            else
            {
                if((i.r-i.l)/i.d>=num)
                    work(lena*2-i.r+num*B.len);
            }
        }
    }
    if(lena<=lenb)work(lena*2);
    for(info i:b.pre)
    {
        if(i.l==i.r)work(lena*2+i.l);
        else
        {
			int tmp=(i.r-i.l)/i.d;
            String B=getprestr(b.l+i.l,b.l+i.l+i.d-1);
            int num=0;
            for(int i=__lg(min(tmp,lena/B.len)+1);~i;--i)
            {
                int nlen=(num|1<<i)*B.len;
                if(nlen<=lena&&B*(num|1<<i)==getsufstr(a.r-nlen+1,a.r))
                    num|=1<<i;
            }
            if(num>i.r-i.l)continue;
            String C=getsufstr(a.l,a.r-num*B.len);
            if(C==getprestr(b.l+i.l,b.l+i.l+C.len-1))
            {
                if(b.l+i.r+C.len-1<=b.r&&C!=getprestr(b.l+i.r,b.l+i.r+C.len-1))
                    ++num;
                if((i.r-i.l)/i.d>=num)
                    ret.push_back({lena*2+i.l,lena*2+i.r-num*i.d,i.d});
            }
            else
            {
                if((i.r-i.l)/i.d>=num)
                    work(i.r-num*i.d+lena*2);
            }
        }
    }
    // for(info i:ret)cerr<<i.l<<' '<<i.r<<' '<<i.d<<'\n';
    // cerr<<ret.size()<<'\n';
    maintain(ret,lena+lenb);
    return ret;
}
vector<info>mergesuf(const node&a,const node&b)
{
    assert(a.r==b.l-1);
    vector<info>ret=a.pre;
    int lena=a.r-a.l+1,lenb=b.r-b.l+1;
    auto work=[&](int x)
    {
        if(x>lena+lenb)return;
        int m=x+1>>1;
        if(Getpre(a.l,a.l+m-1)==Getsuf(a.l+x-m,a.l+x-1))
            ret.push_back({x,x,0});
    };
    for(int I=a.suf.size()-1;I>=0;--I)
    {
        info i=a.suf[I];
        if(i.l==i.r)work(2*lena-i.l);
        else
        {
			int tmp=(i.r-i.l)/i.d;
            String B=Getsufstr(a.r-i.l-i.d+1,a.r-i.l);
            String C=Getsufstr(a.l,a.r-i.r);
            int num=0;
            for(int i=__lg(min(tmp,lenb/B.len)+1);~i;--i)
            {
                int nlen=(num|1<<i)*B.len;
                if(nlen<=lenb&&B*(num|1<<i)==Getprestr(b.l,b.l+nlen-1))
                    num|=1<<i;
            }
            if(C.len<B.len&&Getsufstr(a.r-i.l-C.len+1,a.r-i.l)==C)
            {
                if(num*B.len+C.len<=lenb&&Getprestr(b.l+num*B.len,b.l+num*B.len+C.len-1)==C)
                    ++num;
                if(num)
                    ret.push_back({lena*2-i.r,lena*2-max(i.l,i.r-(num-1)*B.len),i.d});
            }
            else
            {
                if((i.r-i.l)/i.d>=num)
                    work(lena*2-i.r+num*B.len);
            }
        }
    }
    if(lena<=lenb)work(lena*2);
    for(info i:b.pre)
    {
        if(i.l==i.r)work(lena*2+i.l);
        else
        {
    		int tmp=(i.r-i.l)/i.d;
            String B=Getprestr(b.l+i.l,b.l+i.l+i.d-1);
            int num=0;
            for(int i=__lg(min(tmp,lena/B.len)+1);~i;--i)
            {
                int nlen=(num|1<<i)*B.len;
                if(nlen<=lena&&B*(num|1<<i)==Getsufstr(a.r-nlen+1,a.r))
                    num|=1<<i;
            }
            if(num>i.r-i.l)continue;
            String C=Getsufstr(a.l,a.r-num*B.len);
            if(C==Getprestr(b.l+i.l,b.l+i.l+C.len-1))
            {
                if(b.l+i.r+C.len-1<=b.r&&C!=Getprestr(b.l+i.r,b.l+i.r+C.len-1))
                    ++num;
                if((i.r-i.l)/i.d>=num)
                    ret.push_back({lena*2+i.l,lena*2+i.r-num*i.d,i.d});
            }
            else
            {
                if((i.r-i.l)/i.d>=num)
                    work(i.r-num*i.d+2*lena);
            }
        }
    }
    maintain(ret,lena+lenb);
    return ret;
}
node operator+(node a,node b)
{
//    cerr<<a.l<<' '<<b.l<<'\n';
if(a.l==1&&b.r==7)
    n=n;
    node ret;ret.l=a.l,ret.r=b.r;
    ret.pre=mergepre(a,b);
    a.l=n-a.l+1,a.r=n-a.r+1,b.l=n-b.l+1,b.r=n-b.r+1;
    swap(a.l,a.r),swap(b.l,b.r);
    swap(a.pre,a.suf),swap(b.pre,b.suf);
    ret.suf=mergesuf(b,a);
    return ret;
}
void build(int k,int l,int r)
{
    tr[k].l=l,tr[k].r=r;
    if(l==r){tr[k].pre=tr[k].suf={{1,1,0}};return;}
    int mid=l+r>>1;
    build(k<<1,l,mid),build(k<<1|1,mid+1,r);
    tr[k]=tr[k<<1]+tr[k<<1|1];
//     cerr<<k<<' '<<l<<' '<<r<<"!\n";
//     for(info i:tr[k].pre)cerr<<i.l<<' '<<i.r<<' '<<i.d<<'\n';
//     cerr<<'\n';
//     for(info i:tr[k].suf)cerr<<i.l<<' '<<i.r<<' '<<i.d<<'\n';
//     cerr<<'\n';
}
void upd(int k,int l,int r,int x)
{
    if(l==r)return;
    int mid=l+r>>1;
    if(mid>=x)upd(k<<1,l,mid,x);
    else upd(k<<1|1,mid+1,r,x);
//    cerr<<k<<' '<<l<<' '<<r<<"!\n";
//     for(info i:tr[k].pre)cerr<<i.l<<' '<<i.r<<' '<<i.d<<'\n';
//     cerr<<'\n';
//     for(info i:tr[k].suf)cerr<<i.l<<' '<<i.r<<' '<<i.d<<'\n';
//     cerr<<'\n';
    tr[k]=tr[k<<1]+tr[k<<1|1];
}
node query(int k,int l,int r,int x,int y)
{
    if(l>=x&&r<=y)return tr[k];
    int mid=l+r>>1;
    if(mid>=y)return query(k<<1,l,mid,x,y);
    if(mid<x)return query(k<<1|1,mid+1,r,x,y);
    return query(k<<1,l,mid,x,y)+query(k<<1|1,mid+1,r,x,y);
}
int getans(int l,int r)
{
    node res=query(1,1,n,l,r);
    maintain(res.suf,r-l+1);
    int ans=0,lim=r-l+1;
    for(auto i:res.suf)
        if(i.r<=lim)ans+=(i.r-i.l)/i.d+1;
        else{ans+=(lim-i.l)/i.d+1;break;}
    return ans;
}
int main()
{
    scanf("%s",s+1),n=strlen(s+1);
    DS::init(n,s);
    reverse(s+1,s+n+1);
    DS2::init(n,s);
    build(1,1,n);
    int Q;scanf("%d",&Q);
    int lans=0;
//    cerr<<query(1,1,n,1,5)<<'\n';
//    cerr<<query(1,1,n,6,7)<<'\n';
//    cerr<<query(1,1,n,1,7)<<'\n';
//    cerr<<query(1,1,n,11,16)<<'\n';
//    cerr<<getans(11,16)<<'\n';
//    cerr<<query(1,1,n,11,16)<<'\n';
//    cerr<<query(1,1,n,10,16)<<'\n';
    for(int i=1;i<=Q;++i)
    {
        int o;scanf("%d",&o);
        if(o==1)
        {
            int x;char c;scanf("%d %c",&x,&c);x^=lans;
//            cerr<<x<<' '<<c<<"!\n";
            assert(1<=x&&x<=n);
            DS::modify(x,c),DS2::modify(n-x+1,c);
            upd(1,1,n,x);
        }
        else
        {
//        	for(int i=1;i<=n;++i)for(int j=i;j<=n;++j)
//        		cerr<<i<<' '<<j<<' '<<DS::getsuf(i,j).v1<<'\n';
            int l,r;scanf("%d%d",&l,&r);l^=lans,r^=lans;
//            cerr<<l<<' '<<r<<'\n';
            assert(1<=l&&l<=r&&r<=n);
            printf("%d\n",lans=getans(l,r));
        }
    }
}

詳細信息

Subtask #1:

score: 10
Accepted

Test #1:

score: 10
Accepted
time: 54ms
memory: 97028kb

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: 58ms
memory: 97200kb

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: 68ms
memory: 97044kb

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: 48ms
memory: 96884kb

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: 51ms
memory: 97088kb

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: 59ms
memory: 97056kb

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: 70ms
memory: 96984kb

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: 68ms
memory: 96980kb

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: 72ms
memory: 97128kb

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: 54ms
memory: 97020kb

input:

baaabbbaaabbbbaaababbababbabbbbaaaababaababbbbababababbbaabbbaababaaaababbbaaabaaababbababaaabbabbbaaabbabbbabaabaaaababbbbabbbbbaabbabbaaaabaaabababbbaababbbaaaaaababbabaaabaaaabbbabbbaababbbbbbbbaabbbaabbabaabababbaabaabaabbbbbaaababbbbabbbababababaabbababaabbabbbbbbaaaaaaabaabbabbabaabbbbbaaaaaba...

output:

3
3
2
3

result:

ok 4 tokens

Test #11:

score: 0
Accepted
time: 45ms
memory: 96904kb

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: 38ms
memory: 96868kb

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: 53ms
memory: 97100kb

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: 29ms
memory: 97204kb

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: 4422ms
memory: 126724kb

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: 5153ms
memory: 126424kb

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: 4263ms
memory: 123884kb

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: 2862ms
memory: 124732kb

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: 4263ms
memory: 131416kb

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: 3893ms
memory: 124740kb

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: 3085ms
memory: 125860kb

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: 2332ms
memory: 125752kb

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: 2565ms
memory: 125736kb

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: 2240ms
memory: 125824kb

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: 3097ms
memory: 125976kb

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: 2330ms
memory: 125740kb

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: 1725ms
memory: 126064kb

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: 2598ms
memory: 121944kb

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: 2752ms
memory: 122348kb

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: 2333ms
memory: 131472kb

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: 1215ms
memory: 122184kb

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: 3140ms
memory: 123176kb

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: 3609ms
memory: 127440kb

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: 3555ms
memory: 126988kb

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: 1160ms
memory: 131356kb

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: 1611ms
memory: 127040kb

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: 1501ms
memory: 128168kb

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: 1184ms
memory: 131544kb

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: 839ms
memory: 131476kb

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: 1015ms
memory: 127068kb

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: 1058ms
memory: 127412kb

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: 955ms
memory: 124408kb

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: 1457ms
memory: 126928kb

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: 1672ms
memory: 126936kb

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: 1613ms
memory: 127684kb

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: 1346ms
memory: 123880kb

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: 787ms
memory: 124024kb

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: 1128ms
memory: 122536kb

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: 1146ms
memory: 124932kb

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: 1687ms
memory: 128088kb

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: 876ms
memory: 128212kb

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: 831ms
memory: 126028kb

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: 1288ms
memory: 126420kb

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: 6483ms
memory: 127292kb

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: 3464ms
memory: 124564kb

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: 5502ms
memory: 129836kb

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: 4855ms
memory: 131264kb

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: 5007ms
memory: 131572kb

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: 5104ms
memory: 130196kb

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: 4910ms
memory: 124588kb

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: 4284ms
memory: 131260kb

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: 2967ms
memory: 125872kb

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: 2633ms
memory: 125908kb

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: 3148ms
memory: 126164kb

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: 5909ms
memory: 129800kb

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: 3158ms
memory: 125856kb

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: 2344ms
memory: 125904kb

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: 3770ms
memory: 131232kb

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: 3793ms
memory: 131304kb

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: 3245ms
memory: 127220kb

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: 4557ms
memory: 127364kb

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: 4020ms
memory: 125364kb

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: 4025ms
memory: 125892kb

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: 5235ms
memory: 126824kb

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: 3721ms
memory: 124924kb

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: 3710ms
memory: 125052kb

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