脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python解决抛小球问题 求小球下落经历的距离之和示例

Python解决抛小球问题 求小球下落经历的距离之和示例

2021-01-11 00:18kuqs(奇小东) Python

这篇文章主要介绍了Python解决抛小球问题 求小球下落经历的距离之和,涉及Python基于递归的数值计算相关操作技巧,需要的朋友可以参考下

本文实例讲述了Python解决抛小球问题 求小球下落经历的距离之和。分享给大家供大家参考,具体如下:

问题:

小东和三个朋友一起在楼上抛小球,他们站在楼房的不同层,假设小东站的楼层距离地面N米,球从他手里自由落下,每次落地后反跳回上次下落高度的一半,并以此类推知道全部落到地面不跳,求4个小球一共经过了多少米?(数字都为整数)

给定四个整数A,B,C,D,请返回所求结果

测试样例:
100,90,80,70
返回:1020

实现代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Balls:
  def calcDistance(self, A, B, C, D):
    global res
    Balls.totalDistance(self, float(A + B + C + D), float(A + B + C + D))
    return res
  def totalDistance(self, total, statDis):
    global res
    statDis /= 2
    total += statDis*2
    if statDis <= 0.01:
      res = int(round(total))
      return
    Balls.totalDistance(self, total, statDis)
balls = Balls()
global res
balls .calcDistance(100, 90, 80, 70)
print res

运行结果:1020

这一题主要考察浮点数运算以及输出四舍五入,根据给的输出样例来推断边界取值。(我就偏不说动态规划~)

希望本文所述对大家Python程序设计有所帮助。

原文链接:http://www.cnblogs.com/kuqs/p/6672267.html

延伸 · 阅读

精彩推荐