ACG058B求调
题目
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=5e3+10;
int n,f[N],a[N];
int main(){
freopen("data.in","r",stdin);
scanf("%d",&n);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
memset(f,0,sizeof f);
f[0]=1;
for(int i=1;i<=n;i++){
int l=i,r=i;
while(l>1&&a[l-1]<a[i]) l--;
while(r<=n&&a[r+1]<a[i]) r++;
for(int j=l;j<=r;j++) f[j]+=f[j-1];
}
cout<<f[n]<<endl;
return 0;
}