[11501번] 주식 (64비트 정수형 -> long )

알쓸코딩·2024년 1월 14일
0

코테 문제들

목록 보기
86/113


✅ 전략

아! 여기서 다음날의 값이 계속 더 크면 아무것도 하지않고 max값만 바뀐다.
그래서, 음수 여부를 체크할 필요가 없었다.


✅ 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st;
		int testCase = Integer.parseInt(br.readLine());
		for (int t = 0; t < testCase; t++) {
			int N = Integer.parseInt(br.readLine());
			int[] price = new int[N];

			st = new StringTokenizer(br.readLine());
			for (int i = 0; i < N; i++) {
				price[i] = Integer.parseInt(st.nextToken());
			}

			int max = price[N - 1];
			long profit = 0;

			for (int i = N - 2; i >= 0; i--) {
				if (max > price[i]) {
					profit += max - price[i];
				} else {
					max = price[i];
				}
			}

			System.out.println(profit);

		}
	}
}

profile
알면 쓸데있는 코딩 모음!

0개의 댓글