알고리즘

1316-백준-그룹 단어 체커

easysheep 2023. 3. 30. 11:10

1. 문제 출처

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

 

1316번: 그룹 단어 체커

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

www.acmicpc.net

2. 풀이

단순 구현 문제이다

# 입력
n  = int(input())

strings = []
for _ in range(n):
    strings.append(input())
    
    
def solution():
    # 결과값
    result = 0
    # 문자열 하나씩 확인
    for string in strings:
        flag = True
        # 각 문자
        c = string[0]
        # 한번 나온 문자 저장
        c_list = [c]
        for idx in range(1,len(string)):
            # 새로운 문자가 나왔는데 리스트에 없다면
            if string[idx] != c:
                if string[idx] in c_list:
                    flag=False
                    break
                else:
                    c = string[idx]
                    c_list.append(c)
        # 그룹 단어 이면 result+=1
        if flag:
            result+=1
    print(result)

solution()