题目描述
![](https://i-blog.csdnimg.cn/blog_migrate/a66cd396414ac925079f3210b419bae1.png)
输入描述
![](https://i-blog.csdnimg.cn/blog_migrate/7279079c229fa5cfe457d1c81ac93a12.png)
输出描述
输出一行整数表示答案。
输入输出样例
示例 1
输入
6
1 4 2 2 5 6
输出
4
#include <iostream>
using namespace std;
int dp[10000];//只能解决这么大规模的问题,不能通过全部测试
int a[10000];
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
dp[1]=1;
int ans=1;
for(int i=2;i<=n;i++)
{
int max=0;
for(int j=1;j<i;j++)
{
if(dp[j]>max&&a[j]<a[i]) max=dp[j];
}
dp[i]=max+1;
if(dp[i]>ans) ans=dp[i];
}
cout<<ans;
return 0;
}