📅  最后修改于: 2023-12-03 14:50:01.880000             🧑  作者: Mango
在一个给定的整数数组中,求偶数位置的偶数之和。
假设我们有一个整数数组 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
,那么偶数位置的偶数之和就是 2 + 8 + 6 = 16
。
以下是一个求偶数位置的偶数之和的 Python 3 算法实现。
def even_position_even_sum(arr):
"""
求偶数位置的偶数之和
:param arr: 整数数组
:return: 偶数位置的偶数之和
"""
n = len(arr)
res = 0
for i in range(0, n, 2):
if arr[i] % 2 == 0:
res += arr[i]
return res
该函数接受一个整数数组作为参数,返回偶数位置的偶数之和。该算法遍历整个数组,并对所有偶数位置上的偶数求和。
以下是对上面算法实现的测试。
assert even_position_even_sum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) == 16
assert even_position_even_sum([1, 3, 5, 7]) == 0
assert even_position_even_sum([2, 4, 6, 8]) == 20
assert even_position_even_sum([2, 5, 7, 10]) == 2
测试结果表明以上算法实现正确。