等差数列 an 的通项公式:an = a1 + ( n - 1) *d。其中,d为公差,a1为起始项,n为第n项。
等差数列求和公式:前n项和公式为:Sn = na1 + n(n - 1) * d / 2
题目:等差数列 2,5,8,11,14。。。。(从 2 开始的 3 为公差的等差数列),输出求等差数列前n项和。
n = int(input()) print(int(n*2+n*(n-1)*3/2))
辗转相除法求最大公约数:
# 辗转相除法求最大公约数 a = 20 b = 12 def gcd(m, n): # 递归结束条件:如果余数为0,则返回n if m % n == 0: return n # 将规模缩小:递归求n和余数的最大公约数 return gcd(n, m % n) gcd(a, b)
算法:(a,b最小公倍数) = a*b / (a,b最大公约数)
# 使用辗转相除法求最大公约数,然后再求最小公倍数 expression = input().split(' ') a = int(expression[0]) b = int(expression[1]) # 将a设置为a,b中较大的数 if a < b: a, b = b, a # 辗转相除法求最大公约数 def gcd(m, n): if m % n == 0: return n return gcd(n, m % n) print(int(a*b / gcd(a, b)))