#include<bits/stdc++.h>
using namespace std;
const int N=2e6+10;
int n;
int a[N];
int main(){
scanf("%d",&n);
for(int i=1;i<=n;++i)
scanf("%d",a+i);
if(a[n]!=n){
printf("-1\n");
return 0;
}
int cnt=0,minp=1e9;
for(int i=n;i>=1;--i)
if(a[i]<minp)
minp=a[i];
else
++cnt;
printf("%d\n",cnt);
return 0;
}
为何第一个(注释里面的)错了而第二个对了