Minimum Swaps to Make Strings Equal LeetCode solution in C++
1class Solution {2public:3int minimumSwap(string s1, string s2) {4int n = s1.size();5int cnt1 = 0, cnt2 = 0, i = 0;67while (i < n) {8int x = s1[i];9int y = s2[i++];10if (x == 'x' and y == 'y') cnt1++;11if (x == 'y' and y == 'x') cnt2++;12}1314if ((cnt1 + cnt2) % 2 == 1) return -1;1516return (cnt1 / 2) + (cnt2 / 2) + (cnt1 % 2 + cnt2 % 2);17}18};