daniel7481의 개발일지

[프로그래머스]모음사전 본문

BOJ

[프로그래머스]모음사전

daniel7481 2022. 8. 15. 15:26
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/84512

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

풀이

AI Tech4기 1차를 합격하고 2차를 준비하며 알고리즘 문제들을 닥치는대로 풀고 있다. 너무 많은 문제를 풀고 있고 흐름이 끊길까봐 대부분의 문제들을 블로그에 포스팅하지는 못하고 있다. 이 문제 같은 경우에는 오랜만에 반복을 허용한 순열(product 함수)를 사용한 문제여서 포스팅해보았다.문제 자체는 word의 길이가 짧기 때문에 간단하게 브루트포스로 풀 수 있다. 모음 다섯개로 만들 수 있는 모든 문자열중에서 정렬을 한 후에 하나씩  탐색하며 만약 우리가 원하는 문자열이 나오면 answer에 i+1값을 할당해주면 된다.

from itertools import combinations_with_replacement
def solution(word):
    answer = 0
    pos = []
    alphabet = ["A", "E", "I", "O", "U"]
    for i in range(1, 6):
        pos += map(list, combinations_with_replacement(alphabet, i))
    pos.sort()
    for i in range(len(pos)):
        pos[i] = ''.join(pos[i])
    for i in range(len(pos)):
        if pos[i] == word:
            answer = i+1
            break
    return answer

 

반응형

'BOJ' 카테고리의 다른 글

[BOJ]17142 연구소3  (0) 2022.08.15
18429근손실  (0) 2022.08.12
[BOJ]1189 컴백홈  (0) 2022.07.18
[BOJ]2234 성곽  (0) 2022.07.15
[BOJ]18428 감시 피하기  (0) 2022.07.14