[백준] 31395 - 정렬된 연속한 부분수열의 개수

안우진·2024년 2월 23일
0

백준

목록 보기
6/21

[문제]


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

[풀이]


오름차순이 되도록 구간을 만들고, 서로 다른 구간에 대해 구간의 길이를 더하면 된다.
dp 배열을 사용하지 않고, 정수형 변수 2개로도 충분히 풀 수 있다.

[코드]


import sys
r=sys.stdin.readline

n=int(r())
a=list(map(int,r().split()))

dp=[0]*n
for i in range(1, n):
    if a[i-1] < a[i]:
        dp[i] = dp[i-1] + 1
print(sum(dp)+n)

0개의 댓글