11501. 주식
- 풀이
- 뒤에서부터 체크하면서 제일 큰값을 구해두고
- 그보다 작은값들은 다 그때 판다고 생각하고 계산
- 큰값이 나오면 제일 큰값 업데이트하고 그 이전값들은 새로운 큰값에서 판다고 생각
T = int(input())
for t in range(T):
N = int(input())
price = list(map(int, input().split()))
money = 0
maxPrice = 0
for i in range(len(price)-1, -1, -1):
if price[i] > maxPrice:
maxPrice = price[i]
else: # 최대 가격보다 작다면 계산
money += maxPrice - price[i]
print(money)
'코딩테스트 > BOJ' 카테고리의 다른 글
| [백준][DP] 가장 긴 감소하는 부분 수열 (0) | 2024.07.15 |
|---|---|
| [백준][그리디][재귀] 30805. 사전 순 최대 공통 부분 수열 (0) | 2024.07.10 |
| [백준][이분탐색] 2792. 보석 상자 (0) | 2024.07.04 |
| [백준][누적합] 2167. 2차원 배열의 합 (0) | 2024.06.26 |
| [백준][누적합][투포인터] 2003. 수들의 합 2 (0) | 2024.06.26 |