Потому, что ты чего-то лишнего написал.
вдумчиво. struct Stud{ double Ball; int Id;} std::vector<Stud> stud; std::sort(stud.begin(),stud.end(),[](auto const& lhs, auto const& rhs){ return lhs.Ball == rhs.Ball ? lhs.Id < rhs.Id : lhs.Ball > rhs.Ball;})
Вообще, на cppreference всё написано. Проверь через годболт, чё ты как школьник-то?
понятия не имею - но не вижу причин, чтобы не работало. Не подскажешь?
думаю что работает странно, почему если < | > мы берём > ?
Потому что я и есть школьник
Я бы щас рассказал, что я делал в твоём возрасте, но не буду.
Топикстартер в алгоритмах задачу приводил просто : сортировать по убыванию баллов - а при равенстве баллов по возрастанию Id. Мне кажется компаратор соответствует.
даблы не сравнивают через ==
а, да, косяк - виноват. там надо баллы на Инты тоже поменять.
ну или через tie. Да пусть уж сам потренируется )
Если я его инициализировал .0 и мне нужно узнать что там по-прежнему 0 - мне тож эпсилон юзать?
с 0 должно быть ок
всё равно странно написано) обычно там что-то типа if a < b return true else if c < d return true else ...
Обсуждают сегодня