Notice
Recent Posts
Recent Comments
Link
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
Archives
Today
Total
관리 메뉴

hwooo

BOJ (C/C++) 25644번: 최대 상승 본문

Study/Algorithm

BOJ (C/C++) 25644번: 최대 상승

hwooo 2022. 12. 28. 16:23

풀이

i번째 원소 탐색 시, 현재까지의 최소값을 구한 후 i번째 원소-최솟값과 DP[i-1] 값을 비교해 더 큰 것을 DP[i]에 저장하고 최종적으로 DP[N-1] 값을 출력하였다.

코드

#include <stdio.h>

int  A[200000], DP[200000];
int main() {
	int N, min;

	scanf("%d", &N);
	for (int i = 0; i < N; i++) scanf("%d", &A[i]);

	DP[0] = 0, min = A[0];
	for (int i = 1; i < N; i++) {
		if (A[i] < min) min = A[i];
		DP[i] = A[i] - min > DP[i - 1] ? A[i] - min : DP[i - 1];
	}

	printf("%d", DP[N - 1]);
	return 0;
}