문제
코드
My answer
import sys
input=sys.stdin.readline
n,total=int(input()),0
p=list(map(int,input().split()))
p.sort()
for i in range(len(p)):
total+=sum(p[:i+1])
print(total)
Another answer
b=t=0
for i in sorted(map(int,[*open(0)][1].split())):b+=i;t+=b
print(t)
풀이
우선 그냥 문제에 답이 있긴했다. 문제에서 준 예시에서 최소로 되는경우를 보니 가장 걸리는시간이 낮은사람부터 정렬한게 최소라고 나와있어서 그렇게 짰다. 나중에 다시보니 각 사람마다 이전사람의 시간이 누적해서 더해지므로 가장 오래걸리는사람이 제일 뒤로 가는게 맞았다. EZ
728x90
반응형
'코딩테스트 > 백준[Python]' 카테고리의 다른 글
[Python] 백준 #18258 - 큐 2 (0) | 2022.01.19 |
---|---|
[Python] 백준 #1059- 좋은 구간 (0) | 2022.01.19 |
[Python] 백준 #13305- 주유소 (0) | 2022.01.16 |
[Python] 백준 #1931- 회의실 배정[try_again] (0) | 2022.01.16 |
[Python] 백준 #9046- 복호화 (0) | 2022.01.15 |