You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

数组各元素乘其余元素之和的累加值计算 求对应实现代码

数组运算逻辑实现方案

需求说明

给定数组,按顺序取每个元素,乘以数组中其余所有元素的总和,再将所有乘积相加得到最终结果。
示例输入:[4, 3, 5, 1],示例输出:118

实现思路

1. 直观暴力实现

逐一遍历数组元素,每次单独计算除当前元素外的其余元素总和,相乘后累加即可,逻辑简单易懂,适合新手快速理解需求。
代码示例(Python):

def calc_array_value(nums):
    total = 0
    for idx, current in enumerate(nums):
        # 计算除当前元素外的其余元素和
        other_sum = sum(nums[:idx] + nums[idx+1:])
        total += current * other_sum
    return total

# 测试示例
print(calc_array_value([4,3,5,1])) # 输出 118

2. 数学优化实现

通过公式推导可以大幅降低运算复杂度:
设数组总和为sum_all,每个元素为num_i,其余元素和为sum_all - num_i,最终结果为所有num_i * (sum_all - num_i)的和,展开后可得:
最终结果 = sum_all * sum_all - 所有元素的平方和
仅需遍历数组1-2次即可得到结果,时间复杂度为O(n),适合处理长数组场景。
代码示例(Python):

def calc_array_value_optimized(nums):
    sum_all = sum(nums)
    square_sum = sum(x * x for x in nums)
    return sum_all * sum_all - square_sum

# 测试示例
print(calc_array_value_optimized([4,3,5,1])) # 输出 118

内容的提问来源于stack exchange,提问作者debab19

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 02:06:05