CF1682C.LIS or Reverse LIS?
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an array a of n positive integers.
Let LIS(a) denote the length of longest strictly increasing subsequence of a. For example,
- LIS([2,1,1,3]) = 2.
- LIS([3,5,10,20]) = 4.
- LIS([3,1,2,4]) = 3.
We define array a′ as the array obtained after reversing the array a i.e. a′=[an,an−1,…,a1].
The beauty of array a is defined as min(LIS(a),LIS(a′)).
Your task is to determine the maximum possible beauty of the array a if you can rearrange the array a arbitrarily.
给你一个包含 n 个正整数的数组 a。
记 LIS(a) 为数组 a 的最长严格递增子序列(longest strictly increasing subsequence)的长度。例如:
- LIS([2,1,1,3]) = 2。
- LIS([3,5,10,20]) = 4。
- LIS([3,1,2,4]) = 3。
我们定义数组 a′ 为将数组 a 反转后得到的数组,即 a′=[an,an−1,…,a1]。
数组 a 的优美度(beauty)定义为 min(LIS(a),LIS(a′))。
你的任务是:在可以任意重排数组 a 的前提下,求出其优美度的最大可能值。
输入格式
The input consists of multiple test cases. The first line contains a single integer t (1≤t≤104) — the number of test cases. Description of the test cases follows.
The first line of each test case contains a single integer n (1≤n≤2⋅105) — the length of array a.
The second line of each test case contains n integers a1,a2,…,an (1≤ai≤109) — the elements of the array a.
It is guaranteed that the sum of n over all test cases does not exceed 2⋅105.
输入包含多个测试用例。第一行包含一个整数 t (1≤t≤104) —— 测试用例的数量。随后是各测试用例的描述。
每个测试用例的第一行包含一个整数 n (1≤n≤2⋅105) —— 数组 a 的长度。
每个测试用例的第二行包含 n 个整数 a1,a2,…,an (1≤ai≤109) —— 数组 a 的元素。
保证所有测试用例中 n 的总和不超过 2⋅105。
输出格式
For each test case, output a single integer — the maximum possible beauty of a after rearranging its elements arbitrarily.
对于每个测试用例,输出一个整数——即在任意重排数组 a 的元素后所能得到的最大可能的美观度。
输入输出样例
输入#1
3 3 6 6 6 6 2 5 4 5 2 4 4 1 3 2 2
输出#1
1 3 2
说明/提示
In the first test case, a = [6,6,6] and a′ = [6,6,6]. LIS(a)=LIS(a′) = 1. Hence the beauty is min(1,1)=1.
In the second test case, a can be rearranged to [2,5,4,5,4,2]. Then a′ = [2,4,5,4,5,2]. LIS(a)=LIS(a′)=3. Hence the beauty is 3 and it can be shown that this is the maximum possible beauty.
In the third test case, a can be rearranged to [1,2,3,2]. Then a′ = [2,3,2,1]. LIS(a)=3, LIS(a′)=2. Hence the beauty is min(3,2)=2 and it can be shown that 2 is the maximum possible beauty.
在第一个测试用例中,a=[6,6,6],a′=[6,6,6]。LIS(a)=LIS(a′)=1。因此美观度为 min(1,1)=1。
在第二个测试用例中,a 可重排为 [2,5,4,5,4,2],此时 a′=[2,4,5,4,5,2]。LIS(a)=LIS(a′)=3。因此美观度为 3,且可以证明这是可能的最大美观度。
在第三个测试用例中,a 可重排为 [1,2,3,2],此时 a′=[2,3,2,1]。LIS(a)=3,LIS(a′)=2。因此美观度为 min(3,2)=2,且可以证明 2 是可能的最大美观度。
输入解题思路,AI测评打分。不知道怎么写?