문제
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5LrsUaDxcDFAXc
설계
- 뒤에서부터 탐색, max값이 갱신되면 그 다음부터 다시 매입 및 판매
T = int(input())
for TC in range(1, T + 1):
N = int(input())
arr = list(map(int, input().split()))
gold = [] # 매입 가격을 저장하기 위해 리스트 사용
answer = 0
maxV = arr[-1]
for i in range(N-1, -1, -1): # 뒤에서 부터 탐색
if arr[i] > maxV:
maxV = arr[i]
else:
answer += maxV - arr[i]
print(f'#{TC} {answer}')
'PS (Problem Solving) > SW Expert Academy' 카테고리의 다른 글
[SWEA] 15758. 무한 문자열 - 파이썬 (0) | 2023.01.19 |
---|---|
[SWEA] 1926. 간단한 369게임 - 파이썬 (0) | 2023.01.18 |
[SWEA] 5648. 모의 SW 역량테스트 - 원자 소멸 시뮬레이션 (0) | 2022.04.12 |
[SWEA] 4012. 모의 SW 역량테스트 - 요리사 (0) | 2022.04.07 |
[SWEA] 4008. 모의 SW 역량테스트 - 숫자 만들기 (0) | 2022.04.07 |