문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/133499
옹알이 (1) (https://school.programmers.co.kr/learn/courses/30/lessons/120956)에서 조건이 변형된 문제이다.
처음 작성한 코드
- 단어 리스트에서 하나씩 단어를 가져와 조건에 부합하는지 체크하는 풀이이다.
- 4가지 옹알이에 대해 하나씩 체크를 하는데, 연속으로 발생하는 옹알이는 제외해야 하므로 옹알이가 두 번 붙여져 있는 문자열이 단어 안에 있는지 체크한다.
- 연속된 옹알이가 없다면 옹알이에 해당되는 문자열을 단어 안에서 빈문자열로 변환한다.
- 변환이 모두 끝났다면 문자열이 비었는지 확인한다. 비어있지 않다면 다른 문자열이 포함되어 있다는 의미이므로 카운트하지 않는다.
def solution(babbling):
answer = 0
for b in babbling:
for wrd in ["aya", "ye", "woo", "ma"]:
if wrd * 2 not in b:
b = b.replace(wrd, ' ')
if len(b.strip()) == 0:
answer += 1
return answer
# 입출력 예시
print(solution(["aya", "yee", "u", "maa"]))
print(solution(["ayaye", "uuu", "yeye", "yemawoo", "ayaayaa"]))
옹알이(1) (https://ice-greentea.tistory.com/m/22) 코드를 수정된 조건에 맞게 변형시켰다.
다른 코드
사소한 차이는 있으나 크게 다른 코드, 혹은 더 좋은 코드를 발견하지 못했다.
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[Programmers][Python] 둘만의 암호 (0) | 2023.03.22 |
---|---|
[Programmers][Python] 덧칠하기 (0) | 2023.03.21 |
[Programmers][Python] 크기가 작은 부분 문자열 (0) | 2023.03.10 |
[Programmers][Python] 최빈값 구하기 (0) | 2023.03.08 |
[Programmers][Python] 분수의 덧셈 (0) | 2023.03.08 |