Story of CowHacker

백준 11399번 ATM 본문

공부/백준

백준 11399번 ATM

Cow_Hacker 2020. 8. 31. 10:02
728x90

 

백준 문제 ATM을 풀어 볼려고 한다.

 

처음에 문제 이해 하기가 좀 햇갈렸다.

사람 순서, 시간 순서 이 두개가 너무나도 햇갈려하는 나였다.

 

 

a = int(input())                           # 처음 사람의 수를 a에 받아둔다.
timelist = list(map(int, input().split())) # 사람마다 걸리는 시간들을 리스트로 한번에 받아둔다.

s = 0                                      # 걸리는 시간을 합치기 위한 초기 값이다.
slist = []                                 # 걸린 시간을 리스트에 담기위한 리스트다.

while True:                                # while문의 무한루프를 생성한다.
    timelist = sorted(timelist)            # 걸리는 시간들의 리스트를 오름차순으로 정렬시킨다.
    s += timelist[0]                       # 가장 작은 시간인 0번째 원소를 s에 더해나간다.
    slist.append(s)                        # s에 더해간 값 하나하나를 slist에 추가한다.
    del(timelist[0])                       # 한번 쓴 가장 작은시간은 삭제한다.
    
    if len(timelist) == 0:                 # 반복 작업후 걸린 시간들의 리스트 길이가 0이면 진입한다.
        print(sum(slist))                  # slist의 모든 원소를 더한 값을 출력한다.
        break                              # while문의 무한루프를 종료한다.
728x90

'공부 > 백준' 카테고리의 다른 글

백준 5585번 거스름돈  (0) 2020.09.03
백준 11047번 동전0  (0) 2020.08.31
백준 2839번 설탕배달  (0) 2020.08.30
백준 1000번 A + B  (0) 2020.08.11
백준 10172번 개  (2) 2020.08.07
Comments