4368: T3 最长子序列(subsequence)
内存限制:512 MB
时间限制:2.000 S
评测方式:文本比较
命题人:
提交:2
解决:1
题目描述
## T3 最长子序列(subsequence)
### 题目描述
小 C 有一个长度为 $n$ 的序列 $A$。
小 C 认为一个子序列是好的当且仅当该子序列中的元素**互不相同**。
小 C 想要知道序列 $A$ 中最长的好的子序列的长度。
同时小 C 还想要找出序列 $A$ 中最长的好的子序列中**字典序**最小的那一个,这里的字典序与经典的字典序定义不同,需要将下标位置为奇数的数字乘以 $-1$ 后再进行比较。例如序列 $[3,2,1]$ 的字典序在该定义下是小于 $[2,2,1]$ 的。
输入
### 输入格式
输入的第一行包含一个整数 $n$。
接下来一行包含 $n$ 个整数,第 $i$ 个整数表示 $A_i$。
输出
### 输出格式
输出共两行。
第一行包含一个整数,表示序列 $A$ 中最长的好的子序列的长度。
第二行包含若干个整数,表示**字典序**最小的最长的好的子序列。
样例输入 复制
4
3 2 1 3
样例输出 复制
3
3 2 1
提示
### 样例 1 输入
```
4
3 2 1 3
```
### 样例 1 输出
```
3
3 2 1
```
### 样例 1 解释
最长的好的子序列共有 $[3,2,1],[2,1,3]$ 两种,其中 $[3,2,1]$ 字典序更小。
### 样例 2 输入
```
10
5 2 1 7 9 7 2 5 5 2
```
### 样例 2 输出
```
5
5 1 9 7 2
```
其余样例见下发文件。
### 数据规模与约定
- 对于 $20\%$ 的数据,保证 $n \le 20$。
- 对于 $40\%$ 的数据,保证 $n\le 500$。
- 对于 $80\%$ 的数据,保证 $n\le 5000$。
- 对于 $100\%$ 的数据,保证 $1\le n\le 3\times 10^5$,$1\le A_i\le n$。