[백준/파이썬] 2309번 일곱 난쟁이 풀이

업데이트:



문제 정보


풀이

문제

9명 키 중 7명을 골라 합이 100이 되도록 하는 조합을 찾는 문제입니다.

찾은 7명의 키를 오름차순으로 출력합니다.

코드

hs = [int(input()) for _ in range(9)]
hs.sort()

flag = False
for i1 in range(0, 3):
    for i2 in range(i1+1, 4):
        for i3 in range(i2+1, 5):
            for i4 in range(i3+1, 6):
                for i5 in range(i4+1, 7):
                    for i6 in range(i5+1, 8):
                        for i7 in range(i6+1, 9):
                            flag = (hs[i1]+hs[i2]+hs[i3]+hs[i4]+hs[i5]+hs[i6]+hs[i7] == 100)
                            if(flag): break
                        if(flag): break
                    if(flag): break
                if(flag): break
            if(flag): break
        if(flag): break
    if(flag): break


print(hs[i1])
print(hs[i2])
print(hs[i3])
print(hs[i4])
print(hs[i5])
print(hs[i6])
print(hs[i7])

설명

9명 중 7명을 고르는 모든 경우를 검사해 합이 100인 조합을 찾고 즉시 종료합니다.

키 배열을 미리 정렬했기 때문에 출력도 오름차순이 됩니다.



댓글남기기