std::vector<int> arr{1, -1, 1, 1, 1, 4, -1, 4, 4, 4, -1, 7, 8, -1};
auto begin = boost::make_filter_iterator<is_positive_number>(arr.begin(), arr.end());
auto end = boost::make_filter_iterator<is_positive_number>(arr.end(), arr.end());
auto lower = std::lower_bound(arr.begin(), arr.end(), i, [](const auto& val1, const auto& val2) {
return val1 < val2;
});
std::vector<int>::iterator iter = ??????(lower);
Наверное в std::lower_bound
надо было передавать begin
и end
, а то они не используются. А получить исходный итератор можно через lower.base()
.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Найти количество подмножеств чья сумма меньше или равна указанного числа К; Ограничения: максимальное число элементов множества n = 40, каждое...
У меня возникла проблема с пониманием синтаксисаУвидел вот такой конструктор:
Подскажите, пожалуйста, как сделать, чтобы слова из массива выводились в таком виде: то есть, чтобы на строчку влезало разное количество слов,...