Предполагая, что у меня есть STL set <int> s
и int x
, как я могу подсчитать количество элементов в s
, которые меньше x
?
Я ищу решение O(log n)
(или подобное, что лучше, чем O(n)
);
Я уже знаю о std::distance(s.begin(), s.lower_bound(x))
, но я считаю, что O(n)
, потому что set
не является произвольным доступом.