원래는 permutation 순열을 이용해서 모든 경우의 수를 만들어 다 비교해보려고 했는데 너무 비효율적인 것 같아서 다른 분들의 풀이를 찾아봤다
그 중에서 마음에 드는 풀이를 가져와 봤다
def solution(babbling):
answer = 0
word = ["aya","ye","woo","ma"]
for i in babbling:
for s in word:
i = i.replace(s,"!",1)
if i.replace("!","") == "":
answer += 1
return answer
처음에는 직관적으로 와닿지 않아서 print로 직접 확인해봤다
replace라는 함수를 사용하는 풀이법인데
replace는 문자열을 변경하는 함수이다. 문자열 안에서 특정 문자를 새로운 문자로 변경하는 기능을 가지고 있다
replace(현재 문자열에서 바꿀 문자, 새로 바꿀 문자, 횟수)
아래와 같은 코드가 신기해서..
for w in [ "aya", "ye", "woo", "ma" ]:
print(w * 2)
결과 ->
ayaaya
yeye
woowoo
mama