给出了一个数字列表 L 以及另一个数字参数threshold。问题是返回最小的正整数 k,以便将 : 中的前 k 个反转项求和大于阈值(或者,如果找不到这样的 k,则返回 -1)。
例子:
>>> M = [0.5, 3.5, 2.0, 7.0, 1.0]
>>> overflow(M, 10)
-1
>>> overflow(M, 2.5)
3
>>> overflow(M, 2.2)
2
我不擅长编写代码,根本不了解它。
我知道你需要做例如 ( A / A**A
) 来获得乘法逆然后将它们加在一起。这需要持续到 A>M(阈值)。如果所有乘法逆不超过 M,则返回 -1。然后返回您相加的数字数量。我只是不知道如何把它们放在一起。