链接:https://ac.nowcoder.com/acm/contest/13493/C
来源:牛客网
小明最近痴迷于斐波那契数列(1,1,2,3,5……),但是最近他又有了新的奇思妙想,就是对于斐波那契数列的相邻的两个数相乘取倒数然后将每一项进行相加,由于小明只喜欢思考不喜欢动手,所以现在他想让你帮他算下这样一个新的数列的前13项的和为多少?(结果用分数表示,且保留最简分数)
例如前三项:1/(11)+1/(12)+1/(2*3)=5/3
from fractions import Fraction #斐波那契数列 def f(n): if n==1 or n==2: return 1 else: return f(n-1)+f(n-2) sum=0 b=[] for i in range(1,14): sum=sum+Fraction(1,f(i)*f(i+1)) #fractions模块可以实现分数的加法,所以我们可以轻松累加 print(sum)
fractions 模块可以实现分数的约分