http://blog.jobbole.com/52830/
makeBad():
1、for(256)
{构建bad[]}
2、for(m-1)[画线段图]
{构建bad[]}
makeGood():
1、for(m)
{构建good[]}
2、for(m-1)
{
if(hzz[i]==i+1)
{ for(m-1-i)
{ if(good[j]==m)
good[j]=m-1-i;
}
}
}
3、for(m-2)[画线段图]
{构建good[]}
makeHzz():
1、hzz[m-1]=m;
2、for(m-2)
{
j=i;
while(j>=0)
{
if(sub[j]==sub[j+m-1-i])
--j;
}
hzz[i]=i-j;
}