一、原题链接

剑指 Offer 64. 求1+2+…+n

二、题目

在这里插入图片描述

三、思路

这道题可以用到高中数学等差数列的知识,因为从1~n每个数值相差一样的值所以符合等差数列。
可以直接使用等差数列的求和公式进行计算。

求和公式1:
在这里插入图片描述
求和公式2:
在这里插入图片描述

因为我们已经知道了第n个数的值为n,所以可以直接利用求和公式1
即:Sn = n * (1+n)/2
直接在函数中return对应的值即可。

四、代码

变量介绍
n整数
返回值整数
class Solution(object):
    def sumNums(self, n):
        """
        :type n: int
        :rtype: int
        """
        return n*(1+n)/2
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐