[c++] 중복제거 unique(), erase()

강신현·2022년 2월 1일
0

unique()

unique는 말 그대로 unique 한 값들은 남기고 이후 중복된 값 (쓰레기 값이라고도 한다)은 맨 뒤로 보내버리고, 첫번째 쓰레기 위치를 return 한다.

⭐️ _unique 하기 전에 sort()가 되어 있어야 함!

erase()

해당하는 범위의 원소를 지운다.

unique() + erase()

따라서 unique()한 뒤, erase()를 해주면 벡터에서 중복된 원소를 삭제할 수 있다.

// 중복 제거
vector.erase(unique(vector.begin(), vector.end()), vector.end());

예제 (s2) 18870 좌표 압축

References

https://sanghyu.tistory.com/78

profile
땅콩의 모험 (server)

0개의 댓글