알고리즘/문제풀이

[Python] Programmers 위클리 12주차 피로도

정찡이 2021. 11. 3. 13:58
728x90

[Python] Programmers 위클리 12주차 피로도

1. 문제 링크

https://programmers.co.kr/learn/courses/30/lessons/87946

 

코딩테스트 연습 - 피로도

XX게임에는 피로도 시스템(0 이상의 정수로 표현합니다)이 있으며, 일정 피로도를 사용해서 던전을 탐험할 수 있습니다. 이때, 각 던전마다 탐험을 시작하기 위해 필요한 "최소 필요 피로도"와 던

programmers.co.kr

 

2. 문제 요약

  • 최대 던전을 방문할 수 있는 수를 출력

 

3. 아이디어 정리

  • 순열을 이용하여 모든 경우를 확인한다.

 

4. 문제 풀이

4-1. 내 풀이

from itertools import permutations

def solution(k, dungeons):
    answer = 0
    for com in permutations(dungeons, len(dungeons)):
        count = 0
        temp_k = k
        for c in com:
            need, del_ = c
            if temp_k < need:
                answer = max(answer, count)
                break
            else:
                temp_k -= del_
                count += 1
        answer = max(answer, count)
    return answer

 

 

5. 결론

  • 순열 문제