[백준 BOJ_11399] ATM Python 풀이

출처: 백준 온라인 저지

문제

image

풀이

탐욕법(Greedy)로 풀어주었습니다.

우선 기다리는 사람들이 가장 적게 기다리려면 인출하는데 걸리는 시간이 가장 적은 순서대로 서야 됩니다. 그래서 받아준 입력값 P를 오름차순으로 정렬해주고 for loop을 돌아주며 이전 사람이 기다린 시간을 누적하여 더해주었습니다.

마지막에는 모든 사람들의 기다린 시간을 합해야 하기 때문에 P의 총합을 출력해줍니다.

코드

import sys

input = sys.stdin.readline

N = int(input())

P = list(map(int, input().split()))
P.sort()
for i in range(1, N):
  P[i] += P[i-1]

print(sum(P))

Leave a comment