본문 바로가기
알고리즘 문제 풀이

[백준]그룹 단어 체커 - 백준

by pinok1o 2021. 3. 31.

https://www.acmicpc.net/problem/1316

알파벳 체크배열 만들어두고 이미 채크된 알파뱃을 다시 사용하는지 확인

#include <iostream>
#include <string>
#include <string.h>

using namespace std;

string input[101];
int alpha[26];

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

    for (int i = 0; i < N; i++)
    {
        cin >> input[i];
    }

    int cnt = 0;
    for (int i = 0; i < N; i++)
    {
        memset(alpha, 0, sizeof(alpha));

        int isGroup = true;
        for (int j = 0; j < input[i].length(); j++)
        {
            char c = input[i][j];
            if (alpha[c - 'a'] == 0)
                alpha[c - 'a'] = 1;
            else { //이미 나온단어라면?
                if (j >= 1) {
                    char pre = input[i][j - 1];
                    if (pre == c)
                        continue;
                    else
                        isGroup = false;
                }
            }
        }

        if (isGroup)
            cnt++;
    }

    cout << cnt << endl;
}

댓글