CodeACM
HOT 100 · 动态规划 · LC 300

最长递增子序列:ACM 模式刷题

按标准输入读取测试数据,输出结果后可在 CodeACM 在线运行和提交。

题目描述

给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。

子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。

输入格式

第一行输入 n,第二行输入 n 个整数。

输出格式

输出最长长度。

数据范围

  • 1 ≤ n ≤ 2500
  • −10⁴ ≤ nums[i] ≤ 10⁴

公开样例

样例 1

输入

8
10 9 2 5 3 7 101 18

输出

4

最长递增子序列是 [2,3,7,101],长度为 4。

样例 2

输入

6
0 1 0 3 2 3

输出

4

可选择 0、1、2、3。

练习建议

先根据输入输出格式写出可运行程序,再用公开样例检查结果;遇到边界情况时,补充自测用例后提交。