알고리즘/백준(BOJ)

백준 1316 그룹 단어 체커

오뚜깅 2021. 1. 29. 15:26
반응형

문자열에서 첫 글자부터 한 글자씩 검사를 하면서 만약 다음 문자가 자신과 같다면 넘어가고, 자신과 같지 않다면 나머지 문자열에서 자신과 같은 문자가 발견될시 그룹 문자가 아닌 것으로 판명한다. 전체 문자열을 종료없이 다 돈다면 그룹 문자로 판명한다.

#include <iostream>
#include <vector>

using namespace std;

bool check(string s){
    int position = 0;
    for(int i = 0; i < s.size() - 1; i++){
        if(s[i] != s[i + 1]){
            for(int j = i + 1; j < s.size(); j++){
                if(s[i] == s[j])
                    return false;
            }
        }
    }
    return true;
}

int main(){
    int N;
    cin >> N;

    vector<string> s;

    for(int i = 0; i < N; i++){
        string temp;
        cin >> temp;
        s.push_back(temp);
    }

    int count = 0;
    for(int i = 0; i < N; i++){
        bool is_Group = check(s[i]);
        if (is_Group == true)
            count++;
    }

    cout << count;
 
    return 0;
}
반응형