LeetCode135. 分发糖果
- 画折线图理解
class Solution:
def candy(self, ratings: list) -> int:
cnt = 1
tmp = 1
l = 1
r = 0
for i in range(1, len(ratings)):
if ratings[i] > ratings[i - 1]:
tmp += 1
l = tmp
r = 0
cnt += tmp
elif ratings[i] == ratings[i - 1]:
tmp = 1
l = tmp
r = 0
cnt += tmp
else:
tmp = 1
r += 1
if r < l:
cnt += r
else:
cnt = cnt + r +1
return cnt
if __name__ == '__main__':
r = [1, 2, 3, 2, 1, 1]
s = Solution()
print(s.candy(r))