본문 바로가기
코딩테스트 파이썬/파이썬 프로그래머스 2단계

피로도

by 세용용용용 2023. 7. 11.

이거슨 순열 문제

- 주어진 요소들을 모든 가능한 순서로 배열한 결과를 말합니다. 파이썬의 itertools 모듈에서 permutations 함수를 제공하며, 이를 사용하여 순열을 생성할 수 있습니다.

from itertools import permutations
def solution(k, dungeons):
    answer = 0

    #던전 경우의 수 순열을 돌린다
    for i in permutations(dungeons):
        # 던전참여할수 있는 횟수 카운트
        dungeons_count = 0
        #피로도
        pirodo = k

        # 남은 피로도 보다 던전입장요구 피로도가 크면 브레이크
        for j in i:
            if j[0] <= pirodo:
                dungeons_count+=1
                pirodo -= j[1]
            else:
                break
       
        #이전 던전 입장 횟부보다 더 많으면 치환
        if dungeons_count > answer:
            answer = dungeons_count

    #print(answer)
    return answer
solution(80,[[80,20],[50,40],[30,10]])

 

'코딩테스트 파이썬 > 파이썬 프로그래머스 2단계' 카테고리의 다른 글

전화번호 목록  (0) 2023.07.14
타겟 넘버  (0) 2023.07.12
[1차] 뉴스 클러스터링  (1) 2023.07.10
프로세스  (0) 2023.07.08
기능개발  (0) 2023.07.08