CF1335E2.Three Blocks Palindrome (hard version)
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
The only difference between easy and hard versions is constraints.
You are given a sequence a consisting of n positive integers.
Let's define a three blocks palindrome as the sequence, consisting of at most two distinct elements (let these elements are a and b , a can be equal b ) and is as follows: [xa,a,…,a,yb,b,…,b,xa,a,…,a] . There x,y are integers greater than or equal to 0 . For example, sequences [] , [2] , [1,1] , [1,2,1] , [1,2,2,1] and [1,1,2,1,1] are three block palindromes but [1,2,3,2,1] , [1,2,1,2,1] and [1,2] are not.
Your task is to choose the maximum by length subsequence of a that is a three blocks palindrome.
You have to answer t independent test cases.
Recall that the sequence t is a a subsequence of the sequence s if t can be derived from s by removing zero or more elements without changing the order of the remaining elements. For example, if s=[1,2,1,3,1,2,1] , then possible subsequences are: [1,1,1,1] , [3] and [1,2,1,3,1,2,1] , but not [3,2,3] and [1,1,1,1,2] .
输入格式
The first line of the input contains one integer t ( 1≤t≤104 ) — the number of test cases. Then t test cases follow.
The first line of the test case contains one integer n ( 1≤n≤2⋅105 ) — the length of a . The second line of the test case contains n integers a1,a2,…,an ( 1≤ai≤200 ), where ai is the i -th element of a . Note that the maximum value of ai can be up to 200 .
It is guaranteed that the sum of n over all test cases does not exceed 2⋅105 ( ∑n≤2⋅105 ).
输出格式
For each test case, print the answer — the maximum possible length of some subsequence of a that is a three blocks palindrome.
输入输出样例
输入#1
6 8 1 1 2 2 3 2 1 1 3 1 3 3 4 1 10 10 1 1 26 2 2 1 3 1 1 1
输出#1
7 2 4 1 1 3