N = int(input())
arr = list(map(int, input().split()))
up = [1 for _ in range(N)] # 정방향으로 증가하는 수열 길이 구하는 공간
bi = [1 for _ in range(N)] # 역방향으로 증가하는 수열 길이 구하는 공간
for i in range(N):
for j in range(i):
if arr[i] > arr[j]:
# 정방향 i번째 숫자에 대해 증가하는 수열 길이 계산
up[i] = max(up[i], up[j] + 1)
for i in range(N-1,-1,-1):
for j in range(N-1, i, -1):
if arr[i] > arr[j]:
# 역방향 i번째 숫자에 대해 증가하는 수열 길이 계산
bi[i] = max(bi[i], bi[j] + 1)
print(max([up[i] + bi[i] - 1 for i in range(N)]))