题目
Given a string s and a character c that occurs in s, return an array of integers answer where answer.length == s.length and answer[i] is the shortest distance from s[i] to the character c in s.
Example 1:
Input: s = "loveleetcode", c = "e"
Output: [3,2,1,0,1,0,0,1,2,2,1,0]
Example 2:
Input: s = "aaab", c = "b"
Output: [3,2,1,0]
Constraints:
1 <= s.length <= $10^4$s[i] and c are lowercase English letters.c occurs at least once in s.
解析
找到第一个和最后一个c, 第一遍从第一个c到s.end()按规则填写, 第二遍从最后一个c到s.begin()按规则填写或如果已填写的值较小则跳过.
代码
c++
1 | class Solution { |