0%

HackerRank Array 4.Minimum Swaps 2

題目連結:Minimum Swaps 2 | HackerRank

注意算完(算之前亦可)要將兩數交換

1
2
3
4
5
6
7
8
9
10
11
12
13
14
int minimumSwaps(vector<int> arr) {
vector<int> o(arr);
sort(o.begin(),o.end());
int ct=0,update=0;
int m[100010]{0};
for(int i=0;i<arr.size();i++){
if(arr[i]!=o[i]){
swap(arr[i],arr[arr[i]-1]);
ct++;
i--;
}
}
return ct;
}