[SWEA D2] 1859. 백만 장자 프로젝트

shin·2022년 11월 16일
0

CodingTest 문제 풀이

목록 보기
40/79

문제 : [SWEA D2] 1859. 백만 장자 프로젝트

풀이

T = int(input())
for t in range(1, T + 1):
    N = int(input())
    money = list(map(int, input().split()))
    m = money[-1] # 맨 뒤 값을 최대 값으로 설정
    profit = 0
    for i in range(N - 2, -1, -1): # 뒤에서부터 확인
        if money[i] > m: # 최대값보다 더 크면 최대값으로 설정
            m = money[i]
        else:
            profit += m - money[i] # 최대값보다 작으면 최대값에서 현재 값을 뺀 값을 이익으로 저장
    print(f"#{t} {profit}")
  • 앞에서부터 값을 확인하면 런타임 에러 발생
    • 따라서 뒤에서부터 값을 확인하는 방법으로 해결
profile
Backend development

0개의 댓글