3365. Rearrange K Substrings to Form Target String
3365. Rearrange K Substrings to Form Target String
Description
You are given two strings s
and t
, both of which are anagrams of each other, and an integer k
.
Your task is to determine whether it is possible to split the string s
into k
equal-sized substrings, rearrange the substrings, and concatenate them in any order to create a new string that matches the given string t
.
Return true
if this is possible, otherwise, return false
.
An anagram is a word or phrase formed by rearranging the letters of a different word or phrase, using all the original letters exactly once.
A substring is a contiguous non-empty sequence of characters within a string.
Example 1:
1 | Input: s = "abcd", t = "cdab", k = 2 |
Explanation:
- Split
s
into 2 substrings of length 2:["ab", "cd"]
. - Rearranging these substrings as
["cd", "ab"]
, and then concatenating them results in"cdab"
, which matchest
.
Example 2:
1 | Input: s = "aabbcc", t = "bbaacc", k = 3 |
Explanation:
- Split
s
into 3 substrings of length 2:["aa", "bb", "cc"]
. - Rearranging these substrings as
["bb", "aa", "cc"]
, and then concatenating them results in"bbaacc"
, which matchest
.
Example 3:
1 | Input: s = "aabbcc", t = "bbaacc", k = 2 |
Explanation:
- Split
s
into 2 substrings of length 3:["aab", "bcc"]
. - These substrings cannot be rearranged to form
t = "bbaacc"
, so the output isfalse
.
Constraints:
1 <= s.length == t.length <= 2 * 10^5
1 <= k <= s.length
s.length
is divisible byk
.s
andt
consist only of lowercase English letters.- The input is generated such that
s
andt
are anagrams of each other.
Hints/Notes
- 2024/12/03
- map
- 0x3Fâs solution
- Weekly Contest 425
Solution
Language: C++
1 | class Solution { |