728x90

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

출처 : 프로그래머스

 

코딩테스트 연습 - 피로도

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

programmers.co.kr


코드

from itertools import permutations
def solution(k, dungeons):
    answer = 0
    max_len = len(dungeons) # 던전 길이로 순열 만들어야함
    
    #순열
    for dungeon in permutations(dungeons,max_len):
        tmp = 0 # 정답 관리
        tmp_k = k # 피로도 k 복사
        
        for d1,d2 in dungeon:
            if tmp_k >= d1:
                tmp_k -= d2
                tmp += 1
        if tmp > answer:
            answer = tmp
    return answer

풀이

순열 리스트로 모든 경우의 수를 만든다.

이 모든 경우의 수를 완전 탐색하여 정답을 구한다.

 

 

+ Recent posts