[프로그래머스] 옹알이(2)

Error Coder·2022년 10월 28일
0

프로그래머스

목록 보기
5/7
def solution(babbling):
    result = 0

    for word in babbling:
        stack = ''
        prev = ''

        for char in word:
            stack += char

            if prev != stack and (stack == 'aya' or stack == 'ye' or stack == 'woo' or stack == 'ma'):
                prev = stack
                stack = ''
                
        if len(stack) == 0:
            result += 1

    return result


# 문자열 배열 발음할 수 있는 단어의 개수 return
# 배열 안의 발음이 아니면 무조건 발음 못함
# 같은 단어만 반복되도 발음할 수 있는걸로 됨

같은 발음이 연속되면 발음할 수 없는 제한사항을 잊어버리고 풀다가 도움을 받아 구현한 코드이다. stack과 prev를 문자열로 선언하고 stack에 char를 계속 추가해준다. 스택에 들어간 단어와 같지 않으면서 반복이 되지 않게 코드를 구현한 다음 초기화해주었다. 그리고 입출력 예시와 같게 스택에 담길 시 삭제되고 결과값을 1씩 추가하였다.
전과 같은 단어가 반복될 때라는 제한사항을 잊어버려 꽤 많은 고생을 했던 문제다...

profile
개발자 지망생

0개의 댓글