给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。
对每一个孩子,检查是否存在一种方案,将额外的 extraCandies 个糖果分配给孩子们之后,此孩子有 最多 的糖果。注意,允许有多个孩子同时拥有 最多 的糖果数目。
class Solution:
def kidsWithCandies(self, candies: List[int], extraCandies: int) -> List[bool]:
max_candies = max(candies)
for i in candies:
if i + extraCandies >= max_candies:
result.append(True)
else:
result.append(False)
return result
注意使用列表递推式替代for循环会加快程序执行时间,列表递推式没有创造一个列表的实体,所以它的稍微的性能提升来源于不需要在每次迭代中查找列表,和使用它的 append 函数。
class Solution:
def kidsWithCandies(self, candies: List[int], extraCandies: int) -> List[bool]:
max_candies = max(candies)
result = [True if i + extraCandies >= max_candies else False for i in candies]
return result