У меня есть проблема с этим:Алгоритм - Минимум Больше чем размер
Мы имеем целочисленный массив (размер п) [x_1,x_2,...,x_n]
Мы должны найти самую длинную общую часть [x_i,x_i+1,...,x_j]
что минимум (x_i,x_i+1,...,x_j) >= j-i+1
Fe [2,2,1,4,3,3,1] -> 3
(самая длинная правильная часть 4,3,3
)
Я не могу понять, как сократить время ниже O(n^2)
(Проверка каждого отдельного сегмента) Моя вторая мысль была: Каждое значение x_k
равно «Len gth range ", что эта часть может иметь, если есть меньшее число, тогда мы меняем« диапазон длин »(тем временем подсчитывая, как долго этот сегмент), но я не знаю, что делать, если мы получим большие цифры
(я был бы очень благодарен за любую помощь - там, наверное, другое простое решение, но я не вижу)
Вы имеете в виду самый длинный смежный срез, где минимальное значение больше, чем значение остальной части массива? – Carlos
Вы также можете попросить кусочек, минимальный размер которого больше длины среза – Carlos