leetcodeSolution to some Leetcode problems written in C++ |
git clone git://git.dimitrijedobrota.com/leetcode.git |
Log | Files | Refs | README | LICENSE |
1850.cpp (449B)
0 class Solution { 1 public: 2 int getMinSwaps(string &num, int k) { 3 string perm = num; 4 while (k--) 5 next_permutation(perm.begin(), perm.end()); 6 7 int res = 0; 8 for (int i = 0, j = 0; i < num.size(); j = ++i) { 9 while (num[j++] != perm[i]) 10 ; 11 res += j - i - 1; 12 while (i < --j) 13 swap(num[j], num[j - 1]); 14 } 15 return res; 16 } 17 };