별의 공부 블로그 🧑🏻‍💻
728x90
728x170

벡터 내부의 중복된 문자 제거 방법

  • 알고리즘 문제를 풀 때, 벡터 내부의 중복된 문자를 제거하고 싶을 때가 있다.
  • 다음과 같이 간단하게 중복되는 문자를 공백(" ")으로 바꿔주고, 출력할 때 공백(" ")이 아닌 문자만 출력하도록 하는 방법을 사용할 수 있다.
#include <iostream>
#include <vector>
using namespace std;

int N;
string word;
vector<string> words;    

int main() {
    cin >> N;

    for (int i = 0; i < N; i++) {
        cin >> word;
        words.push_back(word);
    }

    // 벡터 내의 중복된 단어 제거
    for (int i = 0; i < words.size(); i++) {
        for (int j = i + 1; j < words.size(); j++) {
            if (words[i] == words[j]) {    // 중복되는 단어가 있는 경우
                words[j] = " ";    // 두 번째 중복된 단어를 공백(" ")으로 바꾼다.
            }
        }
    }

    for (auto i : words) {
        if (i != " ") {    // 공백이 아닌 요소를 출력
            cout << i << '\n';
        }
    }

    return 0;
}

 

입력
4
somewhat
how
somewhat
elephant

 

출력
somewhat
how
elephant
728x90
그리드형(광고전용)
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️
starrykss
starrykss
별의 공부 블로그 🧑🏻‍💻


📖 Contents 📖