[백준] 25943 : 양팔저울 (Python)

백지원·2023년 9월 25일
0

정답코드

n = int(input())
Pebbles = list(map(int, input().split())) # 자갈들 무게
s = [0, 0] # 저울의 왼쪽, 오른쪽

for p in Pebbles:
    if s[0] <= s[1]: # 오른쪽이 무겁거나 같으면
        s[0] += p # 왼쪽에 자갈 달기
    else: # 왼쪽이 무거우면
        s[1] += p # 오른쪽에 자갈 달기

diff = abs(s[0]-s[1]) # 남은 무게 차이
ans = 0 # 추가로 필요한 추의 개수

while diff:
    for w in (100, 50, 20, 10, 5, 2, 1): # 무거운 추부터 꺼냄
        ans += diff//w # w가 몇 개 필요한지 ans에 더하기
        diff %= w # 무게가 w들을 추가로 달고 남은 무게
        
print(ans)

설명은 주석에

0개의 댓글