프로그래밍

10 일+ - 그룹 단어 체커

yscho22 2021. 6. 13. 12:07
반응형

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

 

1316번: 그룹 단어 체커

그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때

www.acmicpc.net

#include <string>
#include <iostream>
#include <set>
using namespace std;

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

    set<char> s;
    char last_c = 0;
    string input;
    int result = 0;

    for (int i = 0; i < test_count; i++) {
        cin >> input;
        for (int j = 0; j < input.size(); j++) {
            
            if (s.find(input[j]) != s.end()) {
                if (input[j] != last_c) {
                    break;
                }
            }
            else {
                s.insert(input[j]);
                last_c = input[j];
            }

            if (j == input.size() - 1) {
                result++;
            }
        }
        s.clear();
    }
    cout << result;
    return 0;
}
반응형