#P15442. [蓝桥杯 2025 国研究生组] 山峰子序列

    ID: 15380 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>动态规划 DP树状数组2025动态规划优化蓝桥杯国赛

[蓝桥杯 2025 国研究生组] 山峰子序列

说明

一个序列 T=[t1,t2,,tk]T = [t_1, t_2, \cdots, t_k] 是“山峰序列”当且仅当存在一个长度为 mmmm 可任意选)的下标对序列 (l1,r1),(l2,r2),,(lm,rm)(l_1, r_1), (l_2, r_2), \cdots, (l_m, r_m) 满足:

  • l1=1l_1 = 1rm=kr_m = k
  • ri>lir_i > l_i
  • ri1+1=lir_{i-1} + 1 = l_i
  • rili0(mod2)r_i - l_i \equiv 0 \pmod{2}t(li+ri)/2t_{(l_i + r_i)/2} 是序列 TT 在区间 [li,ri][l_i, r_i] 中的最大值;
  • 序列 TT 在区间 [li,li+ri2][l_i, \dfrac{l_i + r_i}{2}] 严格单调递增,在区间 [li+ri2,ri][\dfrac{l_i + r_i}{2}, r_i] 严格单调递减。

给定一个长度为 nn 的整数数组 [a1,a2,,an][a_1, a_2, \cdots, a_n],求其最长的子序列 TT 满足 TT 是“山峰序列”,输出其长度。

说明:下标对序列 (li,ri)(l_i, r_i) 基于子序列 TT 的下标,TT 的下标从 1 开始。

输入格式

输入的第一行包含一个正整数 nn

第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \cdots, a_n,相邻整数之间使用一个空格分隔。

输出格式

输出一行包含一个整数表示答案。

10
1 3 2 4 1 2 3 4 3 1
8

提示

样例说明

可取子序列 T=[1,3,2,4,1,2,3,4,3,1]T = [1, 3, 2, 4, 1, 2, 3, 4, 3, 1],其长度为 10 且为一个“山峰序列”,下标对序列为 (1,3),(4,8)(1, 3), (4, 8)

评测用例规模与约定

对于 20%20\% 的评测用例,1n501 \le n \le 50

对于 40%40\% 的评测用例,1n2001 \le n \le 200

对于所有评测用例,1n20001 \le n \le 20000ai1060 \le a_i \le 10^6