[백준/파이썬] 2309번

민정·2023년 1월 25일
0

[백준/파이썬]

목록 보기
52/245
post-thumbnail

백준 2309번

문제

https://www.acmicpc.net/problem/2309

코드

#풀이 1번
import sys
dwarf = []
result = 0

for _ in range(9):
    dwarf.append(int(sys.stdin.readline().rstrip('\n')))

dwarf.sort()
sum_dwarf = sum(dwarf) - 100

for i in range(9):
    for j in range(i+1, 9):
        if (dwarf[i] + dwarf[j] == sum_dwarf):
            dwarf.remove(dwarf[i])
            dwarf.remove(dwarf[j-1])
            for k in dwarf:
                print(k)
            exit()
#풀이 2번
import itertools

dwarf = [int(input()) for _ in range(9)]

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

풀이

  1. 이중 for문을 이용하여 원하는 값을 찾은 뒤, list에서 삭제해줍니다.
  2. combinations을 이용해 무작위로 7개를 뽑은 후, 합이 100인지를 확인합니다.

알게된 점

  • exit(): 프로그램 종료
profile
パㅔバ6ㅇr 덤벼ㄹΓ :-0

0개의 댓글