Run ID:165099
提交时间:2026-11-09 20:21:59
#include<iostream> // cin\cout\endl #include<cstdio> //scanf()\printf() #include<cstring> // strcpy()\strcat()\strcmp()\strlen()\memset() #include<cmath> //sqrt()\pow()\abs()\ceil()\floor()\max()\min() using namespace std; int a[201],n,dp[201]; int main() { cin >> n; int ans=1; for(int i=1; i<=n; i++) { cin>>a[i]; } dp[n]=1; for(int i=n-1; i>=1; i--) { int mx=0; for(int j=i+1; j<=n; j++) { if(a[i]<=a[j]) { dp[i]=max(dp[j]+1,dp[i]); } } if(dp[i]==0){ dp[i]=1; } if(dp[i]>ans) { ans=dp[i]; } } cout<<"max="<<ans; return 0; }