思路:dp
dp[i]表示包括前i个元素中a[i]在内的最大增序列。
代码:
#include<bits/stdc++.h> using namespace std; const int N=1e5+5; int a[N]; int dp[N]; int main() { ios::sync_with_stdio(false); cin.tie(0); int n; cin>>n; dp[0]=1; int ans=1; for(int i=0;i<n;i++)cin>>a[i]; for(int i=1;i<n;i++) { if(a[i]>=a[i-1])dp[i]=dp[i-1]+1; else dp[i]=1; ans=max(dp[i],ans); } cout<<ans<<endl; return 0; }