728x90
https://www.acmicpc.net/problem/11399
- 생각
- i번 사람은 1~(i-1)번 사람의 돈 인출 시간만큼 대기해야함
- 앞 사람의 인출 시간이 적을수록 전체 인출 시간이 줄어듬
- 1번사람의 인출을 (N-1)명이 기다림
- i번 사람의 인출을 (N-i)명이 기다림
- i번 사람은 1~(i-1)번 사람의 돈 인출 시간만큼 대기해야함
- 코드
from sys import stdin
input = stdin.readline
# 사람의 수
N = int(input())
# 각 사람이 돈을 인출하는데 걸리는 시간
P = list(map(int,input().split()))
P.sort()
time = 0
for idx,pi in enumerate(P):
time += pi * (N - idx)
print(time)
728x90
반응형
'TIL - 프로그래밍 > Python 알고리즘' 카테고리의 다른 글
[프로그래머스] Lv. 2 메뉴 리뉴얼 (0) | 2022.06.23 |
---|---|
[백준] 11047. 동전 0 - Python (0) | 2022.06.22 |
[백준] 15654. N과 M (5) ~ (8) - Python (0) | 2022.06.21 |
[백준] 1916. 최소비용 구하기 - Python (0) | 2022.06.21 |
[백준] 17144. 미세먼지 안녕! - Python (0) | 2022.06.21 |
댓글