파비의 매일매일 공부기록

2023.11.25 Today's Challenge 본문

Problem Solving/LeetCode

2023.11.25 Today's Challenge

fabichoi 2023. 11. 25. 23:45

https://leetcode.com/problems/sum-of-absolute-differences-in-a-sorted-array/

 

Sum of Absolute Differences in a Sorted Array - LeetCode

Can you solve this real interview question? Sum of Absolute Differences in a Sorted Array - You are given an integer array nums sorted in non-decreasing order. Build and return an integer array result with the same length as nums such that result[i] is equ

leetcode.com

class Solution:
    def getSumAbsoluteDifferences(self, nums: List[int]) -> List[int]:
        n = len(nums)
        prefix = [nums[0]]
        for i in range(1, n):
            prefix.append(prefix[-1] + nums[i])
        ans = []

        for i in range(len(nums)):
            left_sum = prefix[i] - nums[i]
            right_sum = prefix[-1] - prefix[i]
            left_count = i
            right_count = n - 1 - i
            left_total = left_count * nums[i] - left_sum
            right_total = right_sum - right_count * nums[i]
            
            ans.append(left_total + right_total)
        return ans
반응형

'Problem Solving > LeetCode' 카테고리의 다른 글

2023.11.27 Today's Challenge  (0) 2023.11.27
2023.11.26 Today's Challenge  (0) 2023.11.26
2023.11.24 Today's Challenge  (1) 2023.11.24
2023.11.23 Today's Challenge  (1) 2023.11.23
2023.11.22 Today's Challenge  (0) 2023.11.22
Comments