Leetcode 1220: Shifting Letters 问题解法分析
问题描述
给定一个由小写字母组成的字符串 s
和一个长度相同的整数数组 shifts
,我们需要对字符串中的每个字符进行移位。每个 shifts[i]
表示将字符串 s
中前 i + 1
个字符按字母表中的移位次数进行变换。字母表是环绕的,‘z’ 会变成 ‘a’,‘a’ 会变成 ‘b’,等等。
具体来说,对于每个 shifts[i]
,我们需要将 s
中前 i + 1
个字母移位 shifts[i]
次。最终我们返回移位后的字符串。
示例 1:
输入:
s = "abc"
shifts = [3, 5, 9]
输出:
"rpl"
解释:
- 对于第一个字符 'a',移位 3 次变为 'd'。
- 对于第二个字符 'b',移位 5 次加上 3 次(从前一个字符移位结果的影响),共 8 次,'b' 变为 'j'。
- 对于第三个字符 'c',移位 9 次加上 5 次,再加上 3 次,总共移位 17 次,'c' 变为 't'。
最终结果是 "rpl"。