본문 바로가기

너와!나의!알고!리즘!/백준

[# 11399, Python ] ATM

[풀이]

N = int(input())
time = list(map(int,input().split()))
    #버블 정렬로 작은 순서대로 정렬하기
for j in range(N-1,0,-1):
    for i in range(0,j):
        if time[i] > time[i+1]:
            time[i],time[i+1] = time[i+1], time[i]
    #누적합 구하기
for i in range(1,N):
    time [i] += time[i-1]
print(sum(time))

👻 버블정렬로 우선 작은애들부터 오름차순으로 정렬해준다. => 최솟값이 될려면 작은애들이 여러번 더해져야 하니까

그 다음에는 그냥 누적합을 구해주면 된다! 간단한 정렬. 그런데 버블 정렬 구현이 기억이 가물가물하다.. 복습의 중요성