ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 11399 - ATM
    Programming/BackJoon 2023. 3. 21. 08:15
    728x90

    1) 문제 설명

     

    ATM은 1대이고, 각 사람마다 인출하는 시간이 있음

    P1 = 3, P2 = 1, P3 = 4, P4 = 3, P5 = 2 

    1번째 사람은 인출하는데 3분, 두번째는 1분, 세번째는 4분....

     

    순서대로 인출할 경우에는 

    1번째 사람 3분 = 3분

    2번째 사람 3분 + 1분 = 4분

    3번째 사람 3분 + 1분 + 4분 = 8분

    4번째 사람 3분 + 1분 + 4분 + 3분  = 11분 

    5번째 사람 3분 + 1분 + 4분 + 3분 + 2분 = 13분

     

    총 39분이 걸림

     

    그러나 대기시간이 짧은 순서대로 인출을 하면 32분안에 해결이 된다

     

    그리디 문제로 제일 짧은거부터 선택해서 나아가면 될듯 하다.

     

     

    n = int(input())
    
    lst = list(map(int, input().split()))
    
    lst.sort()
    
    time_value = 0
    for i in range(n):
        time_value += sum(lst[0:i+1])
    print(time_value)
    n = int(input())
    
    arr = list(map(int, input().split()))
    arr.sort()
    
    total = 0
    ans = 0
    for i in arr:
        total += i
        ans += total
    
    #total = reduce(lambda a, b: a+b, arr, 0)
    
    print(ans)

    'Programming > BackJoon' 카테고리의 다른 글

    10814 -나이순 정렬  (0) 2023.04.21
    1427 - 소트인사이트  (0) 2023.04.21
    2225 - 합분해  (0) 2023.03.20
    1699 - 제곱수의 합  (0) 2023.03.17
    2579 - 계단 오르기  (0) 2023.03.16
Designed by Tistory.