C ++ set: contando elementos menos que un valor
Suponiendo que tengo un STLset <int> s
y unint x
, ¿cómo puedo contar el número de elementos ens
que son menos quex
?
Estoy buscando unO(log n)
(o similar; cualquier cosa que sea razonablemente mejor queO(n)
) solución;
Ya se sobrestd::distance(s.begin(), s.lower_bound(x))
, pero eso esO(n)
Creo porqueset
s no son de acceso aleatorio.