본문 바로가기
Python/그리디

[Algorithm] 백준 11399 ATM | 파이썬

by 유일리 2024. 6. 20.

※ 11399 ATM

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

 

문제 해결 TIP

최소  시간의 합을 구하기 위해서는 우선 돈을 뽑는 시간 리스트를 오름차순으로 정렬해야 한다. ex) 1, 2, 3, 3, 4그렇다면 1은 5명 모두에게 해당되는 시간이므로 전체시간에 1*5을 더해주고, 2는 4명에게 해당되는 시간이므로 2*4, 3*3, 3*2, 4*1을 순차적으로 더해주면 된다.

 

전체 코드

N = int(input())
data = list(map(int,input().split()))
data.sort()
result = 0
for i in range(len(data)):
    result += data[i]*(N-i)
print(result)

댓글