코테/프로그래머스

프로그래머스 피로도

밤밭황제 2022. 12. 26. 14:45
ans = 0

def solution(k, dungeons):
    v =[]
    dfs(dungeons,v, k )
    return ans

def dfs(dungeons, visited, cur):
    if check(dungeons, visited, cur) == False:
        global ans
        if ans < len(visited):
            ans = len(visited)
        return 
    for i in range(0, len(dungeons)):
        if i not in visited and dungeons[i][0] <= cur:
            visited.append(i)
            cur -= dungeons[i][1]
            dfs(dungeons, visited, cur)
            cur += dungeons[i][1]
            visited.pop()
            
def check(dungeons, visited, cur):
    if cur <= 0:
        return False
    if len(visited) == len(dungeons):
        return False
    for i in range(0, len(dungeons)):
        if i not in visited:
            if dungeons[i][0] <= cur:
                return True
    return False
728x90