luogu#P11187. 配对序列

配对序列

题目描述

一个序列 s1,s2ks_1,\ldots s_{2k}配对的,当且仅当:

  • 对于任意 1ik1\le i \le ks2i=s2i1s_{2i}=s_{2i-1}
  • 对于任意 1i<k1\le i<ks2is2i+1s_{2i}\ne s_{2i+1}

注意,配对的序列长度必然为偶数。

例如,3,3,5,5,2,23,3,5,5,2,2 是配对的,而 2,2,2,2,5,52,2,2,2,5,5s2=s3s_2=s_3 不满足第二条要求)或者 1,2,3,3,1,11,2,3,3,1,1s1s2s_1\ne s_2 不满足第一条要求)都不是配对的。

给出一个数列 a1,,ana_1,\ldots, a_n,求所有配对的子序列长度的最大值。

输入格式

输入的第一行有一个正整数 nn,表示序列的长度。

第二行有 nn 个正整数 a1,,ana_1,\ldots,a_n,表示这个序列。

输出格式

输出一行一个自然数,表示最长的配对子序列长度。特别地,如果不存在非空的配对子序列,那么输出 00

8
1 2 2 2 2 1 2 2

4

11
1 1 4 1 1 2 1000 2 5 5 4

6

参见 pairing3.in
参见 pairing3.out
参见 pairing4.in
参见 pairing4.out

提示

【样例 1 解释】

1,1,2,21,1,2,2 这个子序列即可。

【样例 2 解释】

1,1,2,2,5,51,1,2,2,5,5 这个配对子序列即可。

【样例 3 解释】

该样例符合测试点 33 的限制。

【样例 4 解释】

该样例符合测试点 1212 的限制。

【数据范围】

对于全体数据,保证 2n5×1052\le n\le 5\times 10^51ai5×1051\le a_i\le 5\times 10^5

测试点编号 nn\le aia_i\le 特殊性质
121\sim 2 1818 5×1055\times 10^5
353\sim 5 500500
676\sim 7 50005000 50005000
898\sim 9 5×1055\times 10^5
1010 5×1055\times 10^5 每个数最多出现 11
1111 aiai+1a_i\le a_{i+1} 恒成立
121412\sim 14 每个数最多出现 22
152015\sim 20