solution
1. 조합을 이용해 9개 중 7개를 뽑아 합이 100이면 출력한다.
# 2309, 일곱 난쟁이
import sys
from itertools import combinations
dwarf = [int(sys.stdin.readline()) for _ in range(9)]
# 조합을 이용해 9명 중 7명 뽑음
seven = list(combinations(dwarf, 7))
for i in seven:
if sum(i) == 100:
ans = list(i)
break
# 오름차순 출력
ans = sorted(ans)
for ans_ in ans:
print(ans_)
29380KB
60ms
문제 출처 https://www.acmicpc.net/problem/2309
2309번: 일곱 난쟁이
아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다.
www.acmicpc.net
'알고리즘 > 브루트포스' 카테고리의 다른 글
자바 | 백준 | 1034 | 램프 (0) | 2021.05.12 |
---|---|
자바 | 백준 | 1759 | 암호 만들기 (0) | 2021.02.28 |
파이썬 | 백준 | 7569 | 토마토 | bfs 3차원 시간초과 (0) | 2020.09.05 |
파이썬 | 백준 | 15686 | 치킨 배달 | 조합(combinations) (0) | 2020.08.21 |
파이썬 | 백준 | 2503 | 숫자 야구 | 순열(permutations) (0) | 2020.08.19 |