[백준] 그룹 단어 체커

2021. 11. 14. 20:46Python/코딩 문제

# 설명

그룹 단어란, 반복하지 않는 연속해서 나타나는 문자를 말한다.

예를 들어,

ccazzzbb의 경우 c,a,z,b 가 연속해서 나타나기에 그룹 단어라고 할 수 있다.

하지만 aabbbccb의 경우 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다.

 

단어 N개를 입력받아, 그룹 단어의 개수를 출력하는 프로그램을 작성하라.

 

# 입출력 예시

입력 출력
4
aba
abab
abcabc
a
1

 

# 문제 풀이

def is_grouded_word(word):
    before = ""
    wlist = []
    for x in word:
        if before != x: # 바로 이전에 나온 단어와 같다면 무시
            wlist.append(x)
        before = x

    if len(set(word)) == len(wlist):
        return True
    return False # 그룹단어 임

test_case = int(input())
answer = 0
for i in range(test_case):
    if is_grouded_word(input()):
        answer += 1
print(answer)

 

# 핵심 포인트

- set() 은 중복X, 순서X (-> len)

반응형

'Python > 코딩 문제' 카테고리의 다른 글

[SWEA] 5247: 연산  (0) 2021.12.30
[백준] 1003: 피보나치 함수  (0) 2021.12.27
[백준] 2×n 타일링  (0) 2021.11.22
[프로그래머스] 키패드 누르기  (0) 2021.11.05
[프로그래머스] 오픈채팅방  (0) 2021.11.03