2561. Rearranging Fruits
Description
You are given a replacements mapping and a text string that may contain placeholders formatted as %var%, where each var corresponds to a key in the replacements mapping. Each replacement value may itself contain one or more such placeholders . Each placeholder is replaced by the value associated with its corresponding replacement key.
Return the fully substituted text string which does not contain any placeholders .
Example 1:
1 | Input: replacements = [["A","abc"],["B","def"]], text = "%A%_%B%" |
Explanation:
- The mapping associates
"A"with"abc"and"B"with"def". - Replace
%A%with"abc"and%B%with"def"in the text. - The final text becomes
"abc_def".
Example 2:
1 | Input: replacements = [["A","bce"],["B","ace"],["C","abc%B%"]], text = "%A%_%B%_%C%" |
Explanation:
- The mapping associates
"A"with"bce","B"with"ace", and"C"with"abc%B%". - Replace
%A%with"bce"and%B%with"ace"in the text. - Then, for
%C%, substitute%B%in"abc%B%"with"ace"to obtain"abcace". - The final text becomes
"bce_ace_abcace".
Constraints:
1 <= replacements.length <= 10- Each element of
replacementsis a two-element list[key, value], where:keyis a single uppercase English letter.valueis a non-empty string of at most 8 characters that may contain zero or more placeholders formatted as%.%
- All replacement keys are unique.
- The
textstring is formed by concatenating all key placeholders (formatted as%) randomly from the replacements mapping, separated by underscores.% text.length == 4 * replacements.length - 1- Every placeholder in the
textor in any replacement value corresponds to a key in thereplacementsmapping. - There are no cyclic dependencies between replacement keys.
Hints/Notes
- 2025/04/26 Q2
- dfs
- No solution fromm 0x3F or Leetcode
Solution
Language: C++
1 | class Solution { |