Leetcode 1369 Solution

This article provides solution to leetcode question 1369 (minimum-swaps-to-make-strings-equal)

https://leetcode.com/problems/minimum-swaps-to-make-strings-equal

Solution

class Solution: def minimumSwap(self, s1: str, s2: str) -> int: cnt1 = 0 cnt2 = 0
for ch1, ch2 in zip(s1, s2): if ch1 == ch2: continue
if ch1 == 'x': cnt1 += 1 else: cnt2 += 1
if (cnt1 + cnt2) % 2 == 1: return -1
if cnt1 == 0 and cnt2 == 0: return 0 elif cnt1 == 1 and cnt2 == 1: return 2 elif cnt1 % 2 == 0 and cnt2 % 2 == 0: return (cnt1 + cnt2) // 2 else: return 1 + (cnt1 + cnt2) // 2