最长上升子序列
测试数据来自 system/1106
作业已超过截止时间,您无法递交本题目。
时间限制:1秒 内存限制:256M
【问题描述】
一个数的序列:\(b_i\),当 \(b_1<b_2<⋯<b_S\) 的时候,我们称这个序列是单调上升的。
对于给定的一个序列:\((a_1,a_2,⋯,a_N)\),我们可以得到一些上升的子序列 \((a_{i_1},a_{i_2},⋯,a_{i_K})\),这里 \(1≤i_1<i_2<⋯<i_K\)。比如,对于序列 \((1, 7, 3, 5, 9, 4, 8)\),有它的一些上升子序列,如 \((1, 7), (3, 4, 8)\) 等等。这些子序列中最长的长度是 \(4\),比如子序列 \((1, 3, 5, 8)\)。
你的任务就是对于给定的序列,求出最长单调上升子序列的长度。
【输入格式】
第 1 行是整数N,表示序列长度。
第 2 行有 \(N\) 个整数,第 \(i\) 个数为 \(a_i\) 。
【输出格式】
一个整数,表示最长单调上升子序列的长度。
【输入输出样例1】
Input
7
1 7 3 5 9 4 8
Output
4
【数据限制】
\(1≤N≤10000\)
\(|a_i|≤10^9\)