给定一个由 个正整数组成的数组 。请你计算该数组的最长不下降子序列(Longest Non-decreasing Subsequence,简称 LNDS)长度。 对于一条子序列,要求保留原数组中的相对顺序,并满足子序列中的元素依次不小于前一个元素,即 。 【名词解释】 子序列:子序列为从原数组中删除任意个(可以为零、可以为全部)元素得到的新数组。 单调不降:单调不降是指对于数组 中从左向右数的第 个元素 ,如果 存在,那么 。
输入描述:
第一行输入一个整数 ,代表数组的元素数量。 第二行输入 个整数 ,代表数组元素。


输出描述:
在一行上输出一个整数,表示最长不下降子序列的长度。
示例1

输入

6
1 2 4 2 3 4

输出

5

说明

在这个样例中,可以选择子序列 \{1,2,2,3,4\},满足单调不降,长度为 5
示例2

输入

5
5 4 3 2 1

输出

1

说明

在这个样例中,任意两个数都不满足单调不降关系,因此最长不下降子序列只能为任意单个元素,长度为 1
加载中...