Изменения
Добавление необходимого ограничения: i < m в функцию buildHMax.
'''for''' k = 1 .. m
'''int''' i = k
'''while''' i < m and x[i] == x[i - k]
i++
hmax[k] = i
next[i] = nhd0[h[i] - kmin[h[i]]]
'''for''' i = nd + 1 .. m - 1
next[m] = nhd0[m - rmin[h[m - 1]]]
'''return''' next