Пожалуйста, предложите структуру данных для ведения чисел таким образом, чтобы я мог ответить на следующие запросы -
Найти (int n) - O (log (n))
Число счетачисел меньше k = O (log (n))
Вставка - O (Log (n))
Это не домашняя работа, а меньшая проблема, с которой я сталкиваюсь, чтобы решить большуюодин - Количество студентов с лучшими оценками и более низким рангом джипа
У меня есть хотя бы дерево avl с поддержкой количества узлов в поддереве на каждом узле. Но я не знаю, как поддерживать этосчитать на каждом узле, когда выполняется вставка и выполняется повторная балансировка.