Количество столбцов от 0 до медианы пятерок =n/10-O(1)

Количество эл-тов в этих столбцах, меньших медианы пятерок, = 3/5 * 5n / 10 –O(1) = 3/10 n -O(1)

Максимальный из двух оставшихся кусков (разбитых медианой пятерок) имеет размер ≤ n- 3/10 n +O(1)

Пусть T(n) = максимальное время поиска k-ой статистики на массиве из n эл-тов

T(n)≤ O(n) + T(n/5) +O(1) + T(7/10 n) +O(1)

Предположим, что для i<n: T(i)<ai, то

T(n)≤ O(n) + T(n/5) +O(1) + T(7/10 n) +O(1)≤ O(n)+an/5 +a 7/10 n=O(n)+ a 9/10 n = (O(n)-an/10) + an

выбираем a так, что (O(n)-an/10)≤ 0, То имеем

T(n)≤ an

Теорема. Алгоритм FindStat3 работает за время T(n)=Θ(n) и требует Θ(1) доп.памяти в стеке и Θ(n) доп.памяти в куче.