题目描述
一个序列 s1,…s2k 是配对的,当且仅当:
- 对于任意 1≤i≤k,s2i=s2i−1。
 
- 对于任意 1≤i<k,s2i=s2i+1。
 
注意,配对的序列长度必然为偶数。
例如,3,3,5,5,2,2 是配对的,而 2,2,2,2,5,5(s2=s3 不满足第二条要求)或者 1,2,3,3,1,1(s1=s2 不满足第一条要求)都不是配对的。
给出一个数列 a1,…,an,求所有配对的子序列长度的最大值。
输入格式
输入的第一行有一个正整数 n,表示序列的长度。
第二行有 n 个正整数 a1,…,an,表示这个序列。
输出格式
输出一行一个自然数,表示最长的配对子序列长度。特别地,如果不存在非空的配对子序列,那么输出 0。
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,2 这个子序列即可。
【样例 2 解释】
取 1,1,2,2,5,5 这个配对子序列即可。
【样例 3 解释】
该样例符合测试点 3 的限制。
【样例 4 解释】
该样例符合测试点 12 的限制。
【数据范围】
对于全体数据,保证 2≤n≤5×105,1≤ai≤5×105。
| 测试点编号 | 
n≤ | 
ai≤ | 
特殊性质 | 
| 1∼2 | 
18 | 
5×105 | 
 | 
| 3∼5 | 
500 | 
| 6∼7 | 
5000 | 
5000 | 
| 8∼9 | 
5×105 | 
| 10 | 
5×105 | 
每个数最多出现 1 次 | 
| 11 | 
ai≤ai+1 恒成立 | 
| 12∼14 | 
每个数最多出现 2 次 | 
| 15∼20 | 
 |