提交时间:2023-01-12 15:16:30

运行 ID: 17812

#include <bits/stdc++.h> using namespace std; int a[110],b[110],c[110],d[110]; int n; int mi(int t){ for(int i=1;i<=n;i++){ if(b[t]==a[i])return i; } } int ma(int t){ for(int i=n;i>=1;i--){ if(b[t]==a[i])return i; } } int main(){ int t=-1,ans=0; cin>>n; for(int i=1;i<=n;i++){ cin>>a[i]; b[i]=a[i]; } for(int i=1;i<=n;i++){ if(a[i]<a[i-1]||a[i]>a[i+1])t=i; } sort(a+1,a+n+1); int flag=0; if(b[t]<b[t-1]){ for(int i=ma(t);i<t;i++){ c[i]++; } for(int i=ma(t);i<t;i++){ if(a[flag]!=a[i]){ if(c[i]>=1)ans++; } flag=i; } } else if(b[t]>b[t+1]){ for(int i=t;i<=mi(t);i++){ d[i]++; } for(int i=t;i<=mi(t);i++){ if(a[flag]!=a[i]){ if(d[i]>=1)ans++; } flag=i; } } cout<<ans; return 0; }