欢迎光临散文网 会员登陆 & 注册

Leetcode 848. Shifting Letters

2023-03-16 15:20 作者:您是打尖儿还是住店呢  | 我要投稿

You are given a string s of lowercase English letters and an integer array shifts of the same length.

Call the shift() of a letter, the next letter in the alphabet, (wrapping around so that 'z' becomes 'a').

  • For example, shift('a') = 'b'shift('t') = 'u', and shift('z') = 'a'.

Now for each shifts[i] = x, we want to shift the first i + 1 letters of sx times.

Return the final string after all such shifts to s are applied.

 

Example 1:

Input: s = "abc", shifts = [3,5,9]

Output: "rpl"

Explanation: We start with "abc".

After shifting the first 1 letters of s by 3, 

we have "dbc".

After shifting the first 2 letters of s by 5, 

we have "igc". 

After shifting the first 3 letters of s by 9, 

we have "rpl",

the answer.

Example 2:

Input: s = "aaa", shifts = [1,2,3]

Output: "gfd"

 

Constraints:

  • 1 <= s.length <= 105

  • s consists of lowercase English letters.

  • shifts.length == s.length

  • 0 <= shifts[i] <= 109

  • 一开始卡在char +数字那里了,就是加个括号(char)强制转换一下即可。

  • 然后提交结果报错,看了下错误的case,又是很大的数字,,,呃,于是在+shifts[i]后面增加了%26.然后就直接过了,int这个类型真的是加减乘除都要考虑溢出了。。。。


Runtime: 13 ms, faster than 71.40% of Java online submissions for Shifting Letters.

Memory Usage: 52.9 MB, less than 56.27% of Java online submissions for Shifting Letters.


Leetcode 848. Shifting Letters的评论 (共 条)

分享到微博请遵守国家法律