#28332: 從數列的規律去推導,不需要用遞迴 ! By Python


rich.pyps@gmail.com (sharkfoolish)

學校 : 不指定學校
編號 : 170745
來源 : [27.242.161.171]
最後登入時間 :
2023-07-06 13:48:55
a216. 數數愛明明 | From: [140.127.41.248] | 發表日期 : 2021-11-30 11:16

可以從題目的敘述找出

f(n) = 1+2 + .... +n 的總和 ,所以可以直接表示成 (i^2+i)//2 

g(n) = f(1) + f(2) + ... + f(n) ,所以可以直接用迴圈去加每一項 f()

#這裡我是用 list comprehension 製作出list後再用sum()去加每一項

 

def f(i):

    return (i**2+i)//2

def g(i):

    return sum([f(i) for i in range(1, i+1)])

 

try :

    while True :

        n = int(input())

        print(f(n), g(n))

except EOFError :

    pass

 
ZeroJudge Forum