a=1 ~ n 的求和
公式:(首项 + 末项) * 项数/2
如果 a=1、 n = 10 => (1+10)10/2 = 55
Python 代码
a = 1 n = 101 # 常规方法 sum = 0 for i in range(a, n): sum += i print(sum) # 递归方法 def sum(num): if num == 1: return 1 return num + sum(num - 1) print(sum(n - 1)) # python 不包括右侧,所以 101 要 减 1 # 公式:(首项 + 末项) * 项数 / 2 sum = ((a + n - 1) * (n - a)) / 2 print(int(sum))