Изменения
→Псевдокод
'''Поиск диапазона '''
/*
'''lower_bound'''(left, right, value, cmp), '''upper_bound'''(left, right, value, cmp) - функции бинарного поиска.
Элементы строк нумеруются с единицы
*/
left = 0; <font color=darkgreen> // left, right - границы диапазона </font> right = n; <font color=darkgreen> // n - длина образца </font>
'''for''' i = 1 '''to''' n {
left = '''lower_bound'''(left, right, p[i], cmp<tex>_i</tex>(i) ); right = '''upper_bound'''(left, right, p[i], cmp<tex>_i</tex>(i) );
}
'''if''' (right - left > 0) {