#D0431. 求最长不下降序列(n200)

求最长不下降序列(n200)

题目描述

设有由 n(1n200)n(1\leq n\leq 200) 个不相同的整数组成的数列,记为:b1,b2,,bnb_1, b_2, \dots, b_nbibj(ij)b_i \neq b_j(i \neq j)

若存在 i1<i2<i3<<iei_1\lt i_2\lt i_3\lt \dots \lt i_e 且有 bi1bi2bieb_{i_1}\le b{i_2}\le \dots \le b_{i_e} 则称为长度为 ee 的不下降序列。程序要求,当原数列出之后,求出最长的不下降序列。

例如 13,7,9,16,38,24,37,18,44,19,21,22,63,15。例中 13,16,18,19,21,22,63 就是一个长度为7的不下降序列,同时也有 7 ,9,16,18,19,21,22,63 组成的长度为 8 的不下降序列。

输入

第一行为 nn,第二行为用空格隔开的 nn 个整数。

输出

第一行为输出最大个数 maxmax(形式见样例);

第二行为 maxmax 个整数形成的不下降序列,答案可能不唯一,输出一种就可以了,本题进行特殊评测。

样例

14
13 7 9 16 38 24 37 18 44 19 21 22 63 15
max=8
7 9 16 18 19 21 22 63