#include using namespace std; int main(){ int n,i,max=0,sum=0,s; int a[101]={0}; cin>>n; for(i=0;i<n;i++) cin>>a[i]; s=a[0]; for(i=1;i<n;i++){ if(a[i]<s){ sum++; if(sum>max) max=sum-1; else sum=0; } s=a[i]; } for(i=0;i<n;i++){ if(a[i]<s) sum++; else{ if(sum>max){ max=sum-1; break; } break; } s=a[i]; } cout<<max; return 0; }
共 1 条回复
5 4 3 2 1 6,以这个例子来说,你构造一个 5 4 3 2 1 6 5 4 3 2 1 6 的数列,然后找到最长的下降序列就是答案了。