Kim Seon Deok

ATM 본문

python/Algorithm

ATM

seondeok 2022. 1. 3. 21:11

11399번: ATM (acmicpc.net)

 

11399번: ATM

첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000)

www.acmicpc.net

N명의 사람이 현금을 인출하는 데 걸리는 시간 = pi

1번 사람이 3분, 2번 사람이 1분, 3번 사람이4분, 4번사람이 3분, 5번 사람이 2분이 걸릴 때 시간의 합은 39분이 걸린다.

따라서 시간의 합을 최소로 만들기 위해선 리스트의 인덱스를 오름차순으로 정렬해야 하다.

[1,2,3,3,4]로 정렬했을 때,

1

1+2

1+2+3

1+2+3+3

1+2+3+3+4

Time[0]은 5번, Time[1]은 4번, Time[2]은 3번 ...

for문 내에서 오름차순으로 정렬한 리스트 Time[i]의 원소들이 더해질 때 각각 N-(i)번 더해지는 규칙을 이용.

 

'python > Algorithm' 카테고리의 다른 글

[코드업] [기초-리스트] 성실한 개미  (0) 2022.01.06
[백준]11170 0의 개수  (0) 2022.01.06
[백준]10972 다음순열  (0) 2022.01.05
전자레인지  (0) 2022.01.03
보물  (0) 2022.01.03
Comments