https://www.acmicpc.net/problem/11054
import sys
n=int(sys.stdin.readline())
nums = list(map(int, sys.stdin.readline().split()))
dp = [1]*n
dec = [1]*n
# 가장 긴 증가하는 부분 수열의 길이 찾기
for i in range(n-1):
for j in range(i+1, n):
if nums[i]<nums[j]:
dp[j]=max(dp[i]+1, dp[j])
# 뒤에서부터 가장 긴 증가하는 부분 수열의 길이 찾기
for i in range(n-1, 0, -1):
for j in range(i-1,-1, -1):
if nums[i]<nums[j]:
dec[j]=max(dec[j], dec[i]+1)
res = [0]*n
for i in range(n): # 둘의 결과를 더함
res[i]=dp[i]+dec[i]
print(max(res)-1)