Блог пользователя nerd

Автор nerd, 14 лет назад, По-русски

Всем привет!

Кто знает, есть ли в си++ такая функция вроде lower_bound, ищущая какой-либо элемент в set'е, который равен или меньше числа x?

Спасибо

  • Проголосовать: нравится
  • +8
  • Проголосовать: не нравится

»
14 лет назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

С помощью lower_bounda и одного ифа можно ее руками реализовать. Не знаю, есть ли это уже готовое в c++.

»
14 лет назад, скрыть # |
Rev. 2  
Проголосовать: нравится 0 Проголосовать: не нравится

Клац

UPD Не так понял вопрос, сорри.

»
14 лет назад, скрыть # |
Rev. 2  
Проголосовать: нравится +10 Проголосовать: не нравится

Нет. Но это выражается, как --s.upper_bound(). Осторожно

  1. Если таких элементов нет, будет плохо. Это надо обработать отдельно.
  2. upper_bound(s.begin(),s.end()) работает за линию. Надо использовать s.upper_bound()
»
14 лет назад, скрыть # |
 
Проголосовать: нравится +7 Проголосовать: не нравится

Готового нету.

--s.upper_bound(x), если нужен наибольший такой.(на границах только нужно проверить) А если вам нужно КАКОЙ-ТО то просто s.begin()