提交时间:2024-03-31 09:23:37

运行 ID: 27820

#include<bits/stdc++.h> using namespace std; int n,x; int a[1000001]; int ma[1000001]; int mi[1000001]; long long ans=0; int main(){ cin>>n>>x; for (int i=1;i<=n;i++){ cin>>a[i]; if (a[i]>ma[i-1]){ ma[i]=a[i]; } else{ ma[i]=ma[i-1]; } } for (int i=n;i>=1;i--){ if (a[i]<a[i+1]){ mi[i]=a[i]; } else{ mi[i]=mi[i+1]; } } for (int l=1;l<=n;l++){ for (int r=l;r<=n;r++){ int maxn=0,minn=1e9+7; for (int i=l;i<=r;i++){ maxn=max(maxn,a[i]); minn=min(minn,a[i]); } if (maxn+minn==x) ans++; } } cout<<ans<<endl; return 0; }