Note
- 贪心
- 重在思路
Code:
#include<bits/stdc++.h>
using namespace std;
int main(){
#ifndef ONLINE_JUDGE
freopen("data.txt","r",stdin);
#endif
int n,num,cnt=0;
scanf("%d",&n);
int index[n];
for(int i=0;i<n;i++){
scanf("%d",&num);
index[num]=i;
}
int i=1;
while(1){
while(index[0]!=0){
swap(index[0],index[index[0]]);
cnt++;
}
while(index[i]==i) i++;
if(i<n){
swap(index[0],index[i]);
cnt++;
}
else break;
}
cout<<cnt;
return 0;
}