#818. 最长上升子序列LIS(3)

最长上升子序列LIS(3)

说明

给定一个长度为N的数列,从中选取若干个数,组成严格单调递增的新序列。输出最长新序列的长度是多少,要求输出一个最长的字典序最小新序列

输入格式

第一行包含整数N。
第二行包含N个整数,表示完整序列。
1≤N≤100000,−10^9≤数列中的数≤10^9

输出格式

第一行为一个整数,即新序列的长度
第二行输出新序列的每个元素的值

样例

20
19 11 10 7 8 9 17 18 20 4 3 15 16 1 5 14 6 2 13 12
6
7 8 9 17 18 20