[LeetCode&Python] Problem 821. Shortest Distance to a Character
2021-05-15 12:49
标签:repr single case self nbsp tee out rac test Given a string Example 1: Note: [LeetCode&Python] Problem 821. Shortest Distance to a Character 标签:repr single case self nbsp tee out rac test 原文地址:https://www.cnblogs.com/chiyeung/p/9753492.htmlS
and a character C
, return an array of integers representing the shortest distance from the character C
in the string.Input: S = "loveleetcode", C = ‘e‘
Output: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0]
S
string length is in [1, 10000].
C
is a single character, and guaranteed to be in string S
.S
and C
are lowercase.class Solution:
def shortestToChar(self, S, C):
"""
:type S: str
:type C: str
:rtype: List[int]
"""
S2=S[::-1]
indexOfC=S.index(C)
indexOfC2=S2.index(C)
ans1=[]
ans2=[]
n=len(S)
for i in range(n):
if S[i]==C:
ans1.append(0)
indexOfC=i
else:
ans1.append(abs(i-indexOfC))
if S2[i]==C:
ans2.append(0)
indexOfC2=i
else:
ans2.append(abs(i-indexOfC2))
ans2=ans2[::-1]
for i in range(n):
if ans1[i]>ans2[i]:
ans1[i]=ans2[i]
return ans1
文章标题:[LeetCode&Python] Problem 821. Shortest Distance to a Character
文章链接:http://soscw.com/essay/85768.html