📅  最后修改于: 2023-12-03 15:10:06.207000             🧑  作者: Mango
这道题的答案可以用数学方法来解决。具体来说,找到一个公式来计算第 n 项。
观察这个数列,可以看到它的每一项都和前两项有关系。因此,这是一个递推数列。根据这个规律,可以写出以下递推公式:
a[1] = 0
a[2] = 0
a[n] = a[n-2] + (n//2) * (n%2+1)
其中,a[n-2] 表示前两项的和,n//2 表示当前项是在哪个偶数段上,n%2+1 是用来判断当前项是在偶数段的左侧还是右侧。
现在,我们已经找到了计算第 n 项的公式。接下来,我们只需要将 n 替换为 15,然后计算出结果即可。
n = 15
a = [0, 0]
for i in range(3, n+1):
a.append(a[i-3] + (i//2) * (i%2+1))
print(a[-1])
这段代码输出的结果就是这个数列的第 15 项。
注意:这里的 a 数组下标从 0 开始计算,因此 a[-1] 表示数组中的最后一项。
参考资料: