[SW Expert Academy, SWEA 1859] 백만 장자 프로젝트 (python)
Problem Solving/SWEA

[SW Expert Academy, SWEA 1859] 백만 장자 프로젝트 (python)

728x90

https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=1&problemLevel=2&contestProbId=AV5LrsUaDxcDFAXc&categoryId=AV5LrsUaDxcDFAXc&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=2&pageSize=10&pageIndex=1

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com


※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다.

728x90

T = int(input())

for test_case in range(1, T + 1):
    N = int(input())
    N_list = list(map(int, input().split()))

    max_price = N_list[-1] #마지막 날 매매가를 최대로 설정
    profit = 0 #이익
    for d in range(N - 2, -1, -1):
        #전날 매매가가 더 적으면
        if max_price > N_list[d]:
           profit += max_price - N_list[d] #이익 계산
        #전날 매매가가 더 크거나 같으면
        else:
            max_price = N_list[d]

    print("#{} {}".format(test_case, profit))

리스트 뒤에서부터 접근하는 것이 포인트

728x90