Avatar ·

递归使用超过1000次

📁 示例, 人工智能, 新手, 项目

我是Python编程的新手(我的第一门编程语言)。在解决Project Euler的第12题时,我在函数中使用了递归,但不幸的是,要解决这个问题,需要递归超过1000次。我想知道如何仍然使用递归来解决这个问题,以便将来了解这一点。

如何改进代码?您对我的变量和函数命名有什么看法?

问题描述如下:

三角形数序列是通过将自然数相加得到的。例如,第7个三角形数是1 + 2 + 3 + 4 + 5 + 6 + 7 = 28。前十个三角形数是:

1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...

列出前七个三角形数的除数:1: 1 3: 1, 3 6: 1, 2, 3, 6 10: 1, 2, 5, 10 15: 1, 3, 5, 15 21: 1, 3, 7, 21 28: 1, 2, 4, 7, 14, 28 如我们所见,28是第一个拥有超过五个除数的三角形数。

第一个拥有超过五百个除数的三角形数是多少?