说明
一个序列 T=[t1,t2,⋯,tk] 是“山峰序列”当且仅当存在一个长度为 m(m 可任意选)的下标对序列 (l1,r1),(l2,r2),⋯,(lm,rm) 满足:
- l1=1 且 rm=k;
- ri>li;
- ri−1+1=li;
- ri−li≡0(mod2) 且 t(li+ri)/2 是序列 T 在区间 [li,ri] 中的最大值;
- 序列 T 在区间 [li,2li+ri] 严格单调递增,在区间 [2li+ri,ri] 严格单调递减。
给定一个长度为 n 的整数数组 [a1,a2,⋯,an],求其最长的子序列 T 满足 T 是“山峰序列”,输出其长度。
说明:下标对序列 (li,ri) 基于子序列 T 的下标,T 的下标从 1 开始。
输入格式
输入的第一行包含一个正整数 n。
第二行包含 n 个整数 a1,a2,⋯,an,相邻整数之间使用一个空格分隔。
输出格式
输出一行包含一个整数表示答案。
10
1 3 2 4 1 2 3 4 3 1
8
提示
样例说明
可取子序列 T=[1,3,2,4,1,2,3,4,3,1],其长度为 10 且为一个“山峰序列”,下标对序列为 (1,3),(4,8)。
评测用例规模与约定
对于 20% 的评测用例,1≤n≤50;
对于 40% 的评测用例,1≤n≤200;
对于所有评测用例,1≤n≤2000,0≤ai≤106。