Блог пользователя gaurab_sust

Автор gaurab_sust, 13 лет назад, По-английски

Suppose the vector is vec then , vec.sort(vec.begin(),vec.end()); vec.resize(distance(vec.begin(),unique(vec.begin(),vec.end())));

  • Проголосовать: нравится
  • -5
  • Проголосовать: не нравится

»
13 лет назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

i don't know if this will solve ur problem, but maybe u can try using std::set instead of std::vector.

»
13 лет назад, скрыть # |
← Rev. 2  
Проголосовать: нравится +19 Проголосовать: не нравится

And what's wrong with your solution? I usually use one of these two snippets:

sort(a.begin(), a.end());
a.resize(a.end() - unique(a.begin(), a.end));
sort(a.begin(), a.end());
a.erase(unique(a.begin(), a.end()), a.end());