#309. 求最长不下降子序列

求最长不下降子序列

求最长不下降子序列

题目描述

设有由 nn1n2001 \le n \le 200)个不相同的整数组成的数列,记为 b(1),b(2),,b(n)b(1),b(2),\dots,b(n)。若存在 i1<i2<i3<<iei_1<i_2<i_3<\dots<i_e 且有 b(i1)b(i2)b(ie)b(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 就是一个长度为 77 的不下降序列,同时也有 7,9,16,18,19,21,22,63 组成的长度为 88 的不下降序列。

输入

第一行为 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