풀이
- 이번 옹알이 문제는 같은 발음을 연속해서 하지 못하는 것 말고는
- 몇번을 해도 되는 문제였기에
- 우선 babbling에 있는 단어 bab을 s 위치로 부터 +2, +3 까지 확인 후
- 해당 범위의 단어가 baby라는 할 수 있는 발음에 해당 하는지에 대한 조건 분기 처리
- 여기서 이전의 단어인 bf와 현재 단어가 같다면 탈출할 수 있도록 처리
- 그리고 baby 단어 목록을 다 탐색해도 맞는 단어가 없는지 체크하는
- check에 대해서도 조건 처리 하여 해결
def solution(babbling):
result = 0
baby = ["aya", "ye", "woo", "ma"]
for bab in babbling:
s,state,text,bf = 0,False,"",""
while True:
check = False
for word in baby:
if bab[s:s+2] == word or bab[s:s+3] == word:
if bf == word:
state = True
break
check = True
bf = word
text += word
s += len(word)
if not check or state: break
if bab == text: result += 1
return result
'알고리즘' 카테고리의 다른 글
[프로그래머스, 파이썬] 과일 장수 (0) | 2024.03.11 |
---|---|
[프로그래머스, 파이썬] 기사단원의 무기 (0) | 2024.03.11 |
[프로그래머스, 파이썬] 문자열 나누기 (0) | 2024.03.08 |
[프로그래머스, 파이썬] 숫자 짝꿍 (0) | 2024.03.07 |
[프로그래머스, 파이썬] 소수 찾기 (0) | 2024.03.07 |