题解 | #求小球落地5次后所经历的路程和第5次反弹的高度#
求小球落地5次后所经历的路程和第5次反弹的高度
https://www.nowcoder.com/practice/2f6f9339d151410583459847ecc98446
定义一个递归函数,返回值为落地n次所经历的路径
a = float() def rebound(left, height): global a height = float(height) if left > 0: length = height + height/2 + rebound(left-1, height/2) return length # 包含一落一弹两个路径长度,和之后的递归计算的路径长度 else: a = height # 将 height 赋值给全局变量a return -height# 由于第五次反弹不计算反弹路径,但是已经提前加上了 # 所以返回 -height 抵消之前加进去的路径 print(rebound(5,int(input())), a, sep='\n')