PS

[백준 파이썬(python) 2309번 문제] (일곱 난쟁이)

이거시원조랑께 2023. 8. 17. 23:52
반응형

문제

설명

완전탐색 문제

for문을 7번을 돌던지(7명을 뽑아서 100되는지 확인), 2번을 돌던지(2명을 뽑아서 총합에서 제외했을때 100 되는지 확인) 해야하는 문제

하지만 사기 파이썬은 조합 기능을 지원함

combination(배열,뽑을 수)

코드

import sys
from itertools import combinations

heights = []

for _ in range(9):
    height = int(sys.stdin.readline())
    heights.append(height)

for i in combinations(heights, 7):
    if sum(i) == 100:
        for j in sorted(i):
            print(j)
        break

주의할 점은 답을 찾은 직후 break로 프로그램 종료해야한다는 것.

반응형