Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2011, 12:57   #1
videolord
Пользователь
 
Аватар для videolord
 
Регистрация: 23.02.2011
Сообщений: 28
Печаль сорторовка pair<int,string> p[1010]

имеется массив с парными элементами

Код:
 pair<int,string> p[1010];
сначала идет рейтинг , потом имя певицы,

4 pamela anderson
5 madonna
1 jessica alba
3 paris hilton
4 jessica simpson
Надо отсортировать по убыванию рейтинга,
если рейтинг двух певиц одинаковы ,
то они должны быть упорядочены по алфавиту.
так
5 madonna
4 jessica simpson
4 pamela anderson
3 paris hilton
1 jessica alba

у меня проблема в том что не получается отсортировать по именам если рейтинг у двух певиц одинаковые

Код:
sort(p,p+j,greater<pair<int,string>>());
надо обьязательно сортировать с помошью STL



Добавлено через 2 минуты
Код C++
Код:
for(int i=0;i<n;i++){ //ввод
 cin>>num>>str; 
 p[i]=make_pair(num,str);
 }
sort(p,p+j,greater<pair<int,string>>()); //сортировка по первому элементу,по убыванию
а дальше не знаю
videolord вне форума Ответить с цитированием
Старый 12.12.2011, 14:03   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2videolord
напиши свой предикат, который сравнивает рейтинг, если рейтинг не равен, и имена, если рейтинг равен
ну например
Код:
struct Pred {
    bool operator()(const std::pair<int, std::string> &p1, const std::pair<int, std::string> &p2) const
    {
        return p1.first == p2.first ? p1.second < p2.second : p1.first < p2.first;
    }
};
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance

Последний раз редактировалось pproger; 12.12.2011 в 14:09.
pproger вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить Int из String ? mediaman Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 08.09.2011 17:36
Перевод из String в Int AlexSol.BY Помощь студентам 0 19.05.2010 20:24
Преобразование int в String^ в С++ Mixasik Помощь студентам 1 21.06.2009 18:57
Перевести Int в String Д'якон Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 26.11.2008 22:04
преобразовань int B string Termo Общие вопросы C/C++ 2 05.05.2008 21:34