Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти длину пути в дереве от корня до ближайшей вершины с заданным значением https://www.cyberforum.ru/ cpp-beginners/ thread1445469.html
написать программу которая находит длину пути от корня до ближайшей вершины со значением е. если такой вершины нет то ответ должен быть- 1
С помощью цикла for вычислить значение выражения C++
С помощью оператора цикла for вычислить y. Оператор if в теле цикла не использовать. Значение m и n вводить с клавиатуры. Шаг изменения переменных i и j указывается только в том случае, если он...
C++ В файле найти сведения о книгах данного автора изданных начиная с заданного года https://www.cyberforum.ru/ cpp-beginners/ thread1445421.html
Помогите, пожалуйста, решить задачу Дан файл, содержащий сведения о книгах. Сведения о каждой из книг – это фамилия автора, название и год издания. Разработать программу, которая читает этот файл...
C++ Функция getline пропускает ввод строки https://www.cyberforum.ru/ cpp-beginners/ thread1445415.html
Строка с getline(cin, pc.name); пропускает ввод. Пишу getline(cin, pc.name); так, как нужно ввести строку с пробелами. Подскажите ,что я делаю не так. И если можно объясните. Спасибо. #include...
C++ Как к строке присоединить tab?
есть строка(char) нужно к концу ее присоединить табуляцию, strcpy не помогает(размер массива не меняется)
C++ Адресация на другой срр файл всем привет можете подсказать как можно связать 2 срр файла сделал отдельно менюшку и эмулятор, как прописать чтоб при нажатии в меню открыть эмулятор он переходил в другой срр файл? https://www.cyberforum.ru/ cpp-beginners/ thread1445386.html
C++ Не найден оператор, принимающий правый операнд Если этот вопрос обсуждался направите меня пожалуйста! #include <iostream> #include <fstream> #include <string> vector<Student> ListStudent; Student temp; https://www.cyberforum.ru/ cpp-beginners/ thread1445376.html C++ Описать класс "Часы"
Помогите пожалуйста;) Перепишите задачу в сообщение. п. 5.18 Правил!
C++ Построение треугольников один внутри другого Дано: треугольник, заданный координатами своих вершин: А(х1,y1), В(x2,y2), C(x3,y3). Построить его на экране, в нём построить треугольник из средних линий, в котором построить треугольник из... https://www.cyberforum.ru/ cpp-beginners/ thread1445356.html C++ Найти сумму чисел записанных в файл В файле test.in записано целые числа. Найти их сумму. Результат запишите в test.out . Для работы с файлами используйте функции fstream https://www.cyberforum.ru/ cpp-beginners/ thread1445348.html
C++ Подсчитать количество слов в каждом предложении заданной строки
С клавиатуры вводится строка . Составить программу , которая считает количество слов в каждом предложении. Выводит на экран дольше предложения. Удаляет все слова , предпоследняя буква которых гласная
C++ Алгоритм разложения подстановки на циклы https://www.cyberforum.ru/ cpp-beginners/ thread1445337.html
Нужна программа или же сам алгоритм или ссылки где вообще об этом можно почитать , просто не могу не чего найти , буду очень благодарен за помощь ))
244 / 164 / 133
Регистрация: 30.09.2012
Сообщений: 690
13.05.2015, 20:29 0

Найти элемент в контейнере priority_queue, используя STL вские итераторы и алгоритмы - C++ - Ответ 7609929

13.05.2015, 20:29. Показов 1934. Ответов 3
Метки (Все метки)

Лучший ответ Сообщение было отмечено tro9an как решение

Решение

tro9an, Да, что-то не обратил внимания, что у вас очередь ^_^
Попробую, что-нибудь придумать

Добавлено через 33 минуты
В общем я придумал только такое решение:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <queue>
#include <algorithm>
#include <iostream>
#include <vector>
int main()
{
    std::priority_queue<int> cont;
    std::vector<int> copy;
    for(int i = 0; i <= 10; ++i)
        cont.push(i);
 
    for(int i = 0; i <= 10; ++i)
    {
        std::cout << cont.top() << " ";
        copy.push_back(cont.top());
        cont.pop();
    }
    std::find_if(copy.begin(), copy.end(), /* условие*/);
    return 0;
}
Насчет сортировки: очередь в данном случае и так сортирует изначально по своему условию (less, если не ошибаюсь), поэтому для сортировки в другом порядке, надо создавать новую очередь с приоритетом и с другим условием сортировки.
С поиском элемента: копировать элементы очереди в вектор и в векторе уже искать.

Можно в векторе и отсортировать, как хочется, но не знаю, это ли надо

Вернуться к обсуждению:
Найти элемент в контейнере priority_queue, используя STL вские итераторы и алгоритмы C++
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.05.2015, 20:29
Готовые ответы и решения:

Избавиться от цикла, используя алгоритмы из STL
Сделал вот такую функцию... Она создает из вектора ассоциативный массив, у которого ключ - элемент...

Найти в контейнере элемент (Rab_st)>=10
Всем привет) Условие: найти в контейнере элемент (Rab_st)&gt;=10 Заранее спасибо!) Вот код: ...

STL. Итераторы и последовательные контейнеры
Немогу решить эти задачки: 1 Написать экземпляр класса queue на основе элементов типа string. ...

STL. Сортировка объектов в контейнере
Имеется список list из объектов Time (минуты:секунды). Через собственный метод...

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

Итераторы потокового ввода/вывода stl
Возник такой вопрос при изучении stl. Берем файл, из которого нужно считать данные, через copy...

В каком STL-контейнере лучше хранить объекты?
Есть класс, реализующий адреса class address { ... } Поискал в сети увидел 3 варианта...

Можно ли узнать размер одного элемента в STL контейнере?
Допустим, мне захотелось узнать, сколько памяти ест мой map. Для этого надо знать размер 1...

STL. Не работает вывод через << в поток когда использую итераторы :(
Вроде бы ничего сложного, но почему-то работать не хочет. Никак не могу понять почему ( Ругается,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru