C++ 代码
#include <bits/stdc++.h>
using namespace std;
const int N=10010;
int a[N];
int n,m,c;
int main()
{
cin>>n;
for(int i=0;i<n;i++) cin>>a[i];
for(int i=0;i<n;i++)
{
int minn=1e9,maxx=-1e9;
for(int j=i;j<n;j++)//j一定要从i开始向后走,每次能保证更新的min max存在
//若j从0向i走 则无法保证
{
minn=min(minn,a[j]);
maxx=max(maxx,a[j]);
if(maxx-minn==j-i)
c++;
}
}
cout<<c<<endl;
return 0;
}