728x90
반응형
1. 문제 설명
2. 풀이과정
해당 문제는 9명 중 일곱 난쟁이가 될 수 있는 모든 경우를 구하고 각 경우마다 키의 합이 100이 되는지 확인하면 해결할 수 있다.
- sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys
- 조합 함수인 combinations() 함수를 사용하기 위해 combinations 모듈을 불러온다. from itertools import combinations
- 난쟁이들의 키를 저장할 리스트를 생성한다. li = list()
- 9명의 난쟁이들의 키를 입력받아 저장한다. for _ in range(9): li.append(int(sys.stdin.readline()))
- 난쟁이들의 키를 오름차순으로 정렬해 조합을 선택하고 옳은 결과를 출력할 때 정렬을 다시 하지 않을 수 있도록 한다. li.sort()
- 가능한 일곱 난쟁이들의 조합을 생성하여 저장한다. result = list(combinations(li, 7))
- 생성한 조합을 하나씩 추출하여 for i in result
- 만약 일곱 난쟁이의 키 합이 100이면 if (sum(i) == 100)
- 각 난쟁이들의 키를 출력하고 for j in i: print(j)
- 일곱 난쟁이를 찾았으므로 종료한다. break
반응형
3. 소스코드
import sys
from itertools import combinations
li = list()
for _ in range(9):
li.append(int(sys.stdin.readline()))
li.sort()
result = list(combinations(li, 7))
for i in result:
if (sum(i) == 100):
for j in i:
print(j)
break
728x90
반응형
'백준' 카테고리의 다른 글
[백준] 1912번 : 연속합 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.08 |
---|---|
[백준] 15650번 : N과 M (2) - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.07 |
[백준] 1924번 : 2007년 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.06 |
[백준] 1932번 : 정수 삼각형 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.05 |
[백준] 4153번 : 직각삼각형 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.03 |
[백준] 1874번 : 스택 수열 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.02 |
[백준] 11651번 : 좌표 정렬하기 2 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.01 |
[백준] 15649번 : N과 M (1) - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.31 |