как найти в контейнере set типа string состоящую из 9ти элементов, наибольшую строку и вывести ее?
не могли бы вы подсказать как найти в контейнере set типа string состоящую из 9ти элементов, наибольшую строку и вывести ее?
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Зависит от того, какой компаратор использует set - вдруг строки упорядочены, скажем, по длине, а не с помощью лексикографического сравнения?
Если все же с его лексикографической помощью, и в вашем условии наибольшая строка тоже имеется в виду "лексикографически наибольшая" - то для множества s просто за O(1)
*prev(s.end())
В общем случае, если компараторы различны - за O(N)
*max_element(s.begin(),s.end())
или с указанием третьим аргументом своего компаратора...
И не расстраивайте с самого утра, утверждая, что вы не знаете, как выводятся строки...