✏️ 문제
문제 파악
woo는 발음할 수 있으나 wo는 발음할 수 없으므로 할 수 있는 발음과 "정확히" 같아야 한다.
그래서 babbling의 배열 값에 할 수 있는 발음을 차례대로 제거하는 방향으로 replace를 활용하면 된다.
for b in babbling:
for l in languge:
b = b.replace(l, '')
연속해서 같은 발음을 할 수 없다는 유의사항이 있기 때문에 연속해서 같은 발음이 있다면 바로 발음할 수 없는 것으로 처리해주어야 한다!
중요한 것은 만약 replace로 발음 대신 빈값을 넣으면
["yayae"]이 입력으로 들어올 시 aya를 제거하면 남은 문자가 ye가 되어 할 수 있는 발음으로 처리된다!!!
때문에 할 수 있는 발음 대신에 빈 값이 아닌 다른 값을 넣어주어야 한다.
나는 .을 대신 넣고 마지막에 . 대신 빈 값을 넣어주어 빈 값이라면 개수 +1을 해주는 방향으로 코드를 짰다.
코드
def solution(babbling):
languge = ['aya', 'ye', 'woo', 'ma']
answer = 0
for b in babbling:
if 'ayaaya' in b or 'yeye' in b or 'woowoo' in b or 'mama' in b:
continue
for l in languge:
b = b.replace(l, '.')
b = b.replace('.', '')
if b == '':
answer += 1
return answer
'PS > 프로그래머스' 카테고리의 다른 글
[Python] 9번 / 지폐 접기 (0) | 2024.10.27 |
---|---|
[Python] [1차] 다트 게임 (3) | 2024.10.27 |
[Python] 추억 점수 (2) | 2024.10.26 |
[Python] 덧칠하기 (1) | 2024.10.26 |
[Python] 카드 뭉치 (0) | 2024.10.26 |