[프로그래머스] 코딩 테스트 입문 - 옹알이(1)(Python)

수경·2022년 10월 27일
1

problem solving

목록 보기
55/174

프로그래머스 - 코딩 테스트 입문: 옹알이(1)

문제

머쓱이는 태어난 지 6개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya" , "ye" , "woo" , "ma" 네 가지 발음을 최대 한 번씩 사용해 조합한 발음밖에 하지 못합니다. 문자열 배열 babbling이 매개변수로 주어질 때, 머쓱이의 조카가 발음할 수 있는 단어의 개수를 return하도록 solution 함수를 완성해주세요.

입출력 예시

babblingresult
["aya", "yee", "u", "maa", "wyeoo"]1
["ayaye", "uuuma", "ye", "yemawoo", "ayaa"]3



풀이

  1. 순열을 이용해서 모든 경우의 수를 저장
  2. 모든 경우의 수에 포함되는 babbling 요소의 갯수 저장

❗️permutations 순열 함수

from itertools import permutations

A = ['a', 'b', 'c', 'd']
P = list(permutations(A, 2))

# P = [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]

코드

from itertools import permutations
def solution(babbling):
    answer = 0
    speek = ["aya","ye","woo","ma"]
    word = []
    for i in range(1, len(speek)+1):
        for j in permutations(speek, i):
            word.append(''.join(j))

    for i in babbling:
        if i in word:
            answer += 1

    return answer

대박
얼마전에 조합으로 푼 문제랑 비슷해서 함수만 대충 찾아보고 엄청 빨리 풀었다!!
심지어 간단해!

빨리 잘라고 했는데 풀리니까 왜 이렇게 신나냐...
이게 다 html이랑 css 때문이다........ 암튼임.....

좋은데 찝찝한 점: 자바 공부할라고 프로그래머스 들어간건데... 파이썬으로 풂..... 🫠

내일부터는 자바 공부해야지!!!!!

profile
어쩌다보니 tmi뿐인 블로그😎

1개의 댓글

comment-user-thumbnail
2022년 12월 7일

안녕하세요~
ayawooayawoo, woomawooma 등으로 순열 원소가 반복될 경우에는 실패하네요~~

답글 달기