[프로그래머스] 피로도

 

문제

def solution(k, dungeons):
    def dfs(k, dungeons, visited):
        max_count = 0
        for i in range(len(dungeons)):
            if not visited[i] and dungeons[i][0] <= k:
                visited[i] = True
                max_count = max(max_count, dfs(k - dungeons[i][1], dungeons, visited) + 1)
                visited[i] = False
        return max_count

    visited = [False] * len(dungeons)
    answer = dfs(k, dungeons, visited)
    return answer