알고리즘 문제

백준 1316번 : 그룹 단어 체커 in Python

YJH3968 2021. 7. 3. 20:26
728x90
1316번: 그룹 단어 체커
 
www.acmicpc.net

이 문제는 주어진 단어 중 그룹 단어의 개수를 구하는 문제이다. 이때 그룹 단어란 단어에 존재하는 모든 문자에 대해서 각 문자가 연속해서 나타나는 경우만을 말한다.

이를 해결하기 위해서는 문자열의 각 문자마다 그 문자 a와 문자의 오른쪽에 이웃한 문자 b를 비교해 두 문자가 서로 다른 경우 a 뒤에 문자 a가 나오는지를 검사하면 된다. 만약 문자 a가 나오는 경우 해당 문자열은 그룹 단어가 될 수 없다. 

이를 코드로 구현하면 다음과 같다.

T = int(input())
cnt = 0
for _ in range(T):
    s = input()
    res = True
    for idx in range(0, len(s)-1):
        c = s[idx]
        if s[idx] != s[idx+1]:
            if s[idx+1:].find(c) >= 0:
                res = False
                break
    if res: cnt += 1
print(cnt)

 

728x90
댓글수0