LeetCode(力扣)1005. K 次取反后最大化的数组和Python

LeetCode1005. K 次取反后最大化的数组和

    • 题目链接
    • 代码

题目链接

https://leetcode.cn/problems/maximize-sum-of-array-after-k-negations/
LeetCode(力扣)1005. K 次取反后最大化的数组和Python_第1张图片

代码

class Solution:
    def largestSumAfterKNegations(self, nums: List[int], k: int) -> int:
        nums.sort(key=lambda x: abs(x), reverse=True)
        for i in range(len(nums)):
            if nums[i] < 0 and k > 0:
                nums[i] *= -1
                k -=1
        if k % 2 == 1:
            nums[len(nums) - 1] *= -1
        return sum(nums)

你可能感兴趣的:(leetcode,python,算法,职场和发展)