LeetCode 2615. 等值距离和 详细技术解析(含多版代码)
LeetCode 2615. 等值距离和 详细技术解析(含多版代码)
一、题目核心解析
1.1 题目描述
给定一个下标从 0 开始的整数数组 nums,要求构造一个长度与 nums 相同的数组 arr,其中 arr[i] 的定义如下:
对于每个 i,找到所有满足 nums[j] == nums[i] 且 j ≠ i 的下标 j;
arr[i] 是所有 |i - j| 的和;
若不存在这样的 j(即 nums[i] 是唯一的),则 arr[i] = 0。
返回最终的数组 arr。
1.2 示例解读
以示例 1 为例:输入 nums = [1,3,1,1,2]
nums[0] = 1,相同值的下标为 2、3 → arr[0] = |0-2| + |0-3| = 2 + 3 = 5;
nums[1] = 3,无其他相同值 → arr[1] = 0;
nums[2] = 1,相同值的下标为 0、3 → arr[2] = |2-0| + |2-3| = 2 + 1 = 3;
nums[3] = 1,相同值的下标为 0、2 → arr[3] = |3-0| + |3-2| = 3 + 1 = 4;
