acwing 895. 最长上升子序列
给定一个长度为N的数列,求数值严格单调递增的子序列的长度最长是多少。
#include<bits/stdc++.h> using namespace std; const int N=1005; int a[N],f[N],n,ans; int main() { cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; for(int i=1;i<=n;i++) { f[i]=1; for(int j=1;j<i;j++) if(a[j]<a[i]) f[i]=max(f[i],f[j]+1); ans=max(ans,f[i]); } cout<<ans; return 0; }