我的解法:
先统计出总和,通过总和求出前面的和以及后面的和
class Solution:
def maximumSumScore(self, nums: List[int]) -> int:
list_sum=sum(nums)
current_sum=0
max_sum=-999999
for each in nums:
current_sum+=each
current_max_sum=max(current_sum,list_sum-current_sum+each)
max_sum=max(current_max_sum,max_sum)
return max_sum
标准解法:
class Solution:
def maximumSumScore(self, nums: List[int]) -> int:
right = sum(nums)
left = 0
ans = max(nums[0],right)
for each in nums:
left += each
ans = max(left,right,ans)
right -= each
return ans