#include<iostream>
using namespace std;
int main()
{
char a[9]="abaabcac";
int i=0;
int j=-1;
int next[8];
next[0]=-1;
while(i<=7)
{
if(j==-1||a[i]==a[j])
{++i;++j;next[i]=j;}
else j=next[j];
}
for(int k=0;k<8;k++)
printf("%d",next[k]);
char s[12]="xabaabcacaa";
int si=0,sj=0;
while(si<=10&&sj<=7)
{
if(sj==-1||s[si]==a[sj])
{si++;sj++;
cout<<" sj="<<sj;}
else sj=next[sj];
}
cout<<"posi =="<<si<<endl;
cout<<"posj =="<<sj<<endl;
return 0;
}