С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
3 / 3 / 1
Регистрация: 02.12.2016
Сообщений: 142
1

Стандартные алгоритмы

22.05.2018, 01:38. Показов 1274. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет,
Есть vector<string>, в котором лежат города. Нужно вернуть диапазон строк, начинающихся с символа prefix, в виде пары итераторов (функция FindStartsWith должна возвращать 2 итератора) которые указывают на начало и конец диапазона.
Я думаю, что идеально подходит алгоритм equal_range, но я не знаю как его примерить сo string, на числах было бы легче.
Если итоговый диапазон пуст, его границы должны указывать на то место в контейнере, куда можно без нарушения порядка сортировки вставить любую строку.
Пример функции main :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int main() {
  const vector<string> sorted_strings = {"moscow", "motovilikha", "murmansk"};
  
  const auto mo_result =
      FindStartsWith(begin(sorted_strings), end(sorted_strings), "mo");
  for (auto it = mo_result.first; it != mo_result.second; ++it) {
    cout << *it << " ";
  }
  cout << endl;
  
  const auto mt_result =
      FindStartsWith(begin(sorted_strings), end(sorted_strings), "mt");
  cout << (mt_result.first - begin(sorted_strings)) << " " <<
      (mt_result.second - begin(sorted_strings)) << endl;
  
  const auto na_result =
      FindStartsWith(begin(sorted_strings), end(sorted_strings), "na");
  cout << (na_result.first - begin(sorted_strings)) << " " <<
      (na_result.second - begin(sorted_strings)) << endl;
  
  return 0;
}
Вывод
C++
1
2
3
moscow motovilikha
2 2
3 3
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2018, 01:38
Ответы с готовыми решениями:

В какой dll стандартные алгоритмы
Hi everybody Подскажите кто знает. Компилятор Visual Studio использует функцию printf...

Пакетированные стандартные блоки - Вложенные стандартные блоки
Кто нибудь может объяснить на примере кода С, как это выглядит?

Стандартные алгориты
#include &lt;vector&gt; #include &lt;iostream&gt; #include &lt;algorithm&gt; template &lt;typename T&gt; class...

стандартные функции
подскажите кто знает где можно почитать про стандартные функции типа Sleep() setTikccount() beep()

0
22.05.2018, 01:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2018, 01:38
Помогаю со студенческими работами здесь

Стандартные библиотеки ?
В языке программирования C++ термин Стандартная Библиотека означает коллекцию классов и функций,...

Стандартные массивы
Почему работает этот код? А именно 5 строчка. Насколько мне известно, размер для таких массивов...

Стандартные библиотеки с++
Здравствуйте. Существует ли источник, в котором можно узнать о содержимом стандартных библиотек c++...

Стандартные потоки
Пишу такой код #include &lt;iostream&gt; #include &lt;thread&gt; using namespace std; void f1() { for...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru