3106. Lexicographically Smallest String After Operations With Constraint
3106. Lexicographically Smallest String After Operations With Constraint
Description
You are given a string s
and an integer k
.
Define a function distance(s1, s2)
between two strings s1
and s2
of the same length n
as:
- The sum of the minimum distance between
s1[i]
ands2[i]
when the characters from'a'
to'z'
are placed in a cyclic order, for alli
in the range[0, n - 1]
.
For example, distance("ab", "cd") == 4
, and distance("a", "z") == 1
.
You can change any letter of s
to any other lowercase English letter, any number of times.
Return a string denoting the lexicographically smallest string t
you can get after some changes, such that distance(s, t) <= k
.
Example 1:
1 | Input: s = "zbbz", k = 3 |
Example 2:
1 | Input: s = "xaxcd", k = 4 |
Example 3:
1 | Input: s = "lol", k = 0 |
Hints/Notes
- change as many letters to ‘a’ first, then append the remaining
Solution
Language: C++
1 | class Solution { |