[백준] 2491번 수열 - 파이썬/DP

JinUk Lee·2023년 1월 9일
0

백준 알고리즘

목록 보기
12/78

https://www.acmicpc.net/problem/2491



N = int(input())
N_list = list(map(int,input().split()))

inc_list = [1]*N
dcre_list = [1]*N

for i in range(1,N):

    if N_list[i] <= N_list[i-1]:
        inc_list[i]=max(inc_list[i], inc_list[i-1]+1)
    if N_list[i] >= N_list[i-1]:
        dcre_list[i]=max(dcre_list[i], dcre_list[i-1]+1)

print(max(max(inc_list),max(dcre_list)))

같은 자리 수열을 만들어서 조건을 만족하면 1을 더해주는 기본적인 DP 문제이다.

profile
개발자 지망생

0개의 댓글