以下是一个使用Python编写的程序,用于确定给定的列表是否具有加法序列。
def is_additive_sequence(nums):
# 如果列表长度小于3,则无法构成加法序列
if len(nums) < 3:
return False
for i in range(2, len(nums)):
# 检查前两个数是否能够构成加法序列
if nums[i] != nums[i-1] + nums[i-2]:
return False
return True
# 示例用法
nums1 = [1, 2, 3, 5, 8]
nums2 = [1, 2, 4, 7, 11]
nums3 = [1, 2, 4, 8]
nums4 = [1, 2, 3]
print(is_additive_sequence(nums1)) # True
print(is_additive_sequence(nums2)) # True
print(is_additive_sequence(nums3)) # False
print(is_additive_sequence(nums4)) # False
上述代码中,is_additive_sequence
函数接受一个列表作为输入,并通过迭代列表中的元素来检查是否满足加法序列的条件。具体来说,它从列表的第三个元素开始,逐个检查当前元素是否等于前两个元素的和。如果任何一个检查不通过,则函数返回False
,否则返回True
。最后,我们使用一些示例列表来测试这个函数,并打印结果。