#1657
Determine if Two Strings Are Close
specialist · 810 · lc medium +31 · verified · 54.2% accepted · 4,115 likes · top 46%
Description
Two strings are close if one can be transformed into the other via these operations any number of times:
- Operation 1: swap any two characters.
- Operation 2: swap all occurrences of one character with all occurrences of another existing character.
Given word1 and word2, return true if they are close, false otherwise.
Example 1:
Input: word1 = "abc", word2 = "bca"
Output: true
Explanation: You can attain word2 from word1 in 2 operations.
Apply Operation 1: "abc" -> "acb"
Apply Operation 1: "acb" -> "bca"
Example 2:
Input: word1 = "a", word2 = "aa"
Output: false
Explanation: It is impossible to attain word2 from word1, or vice versa, in any number of operations.
Example 3:
Input: word1 = "cabbba", word2 = "abbccc"
Output: true
Explanation: You can attain word2 from word1 in 3 operations.
Apply Operation 1: "cabbba" -> "caabbb"
Apply Operation 2: "caabbb" -> "baaccc"
Apply Operation 2: "baaccc" -> "abbccc"
Code
1
2
3