Python程序来找到一个数字的更好的除数
假设我们有一个数字 n。我们必须根据这些条件找到 n 的除数,哪个更好:我们有两个数字 p 和 q,一个数字总和为更大的数字被称为比另一个更好。当数字之和相同时,数字越小越好。
所以,如果输入像 n = 180,那么输出将是 9,因为除数是 [1, 2, 3, 4, 5, 6, 9, 10, 12, 15, 18, 20, 30, 36, 45、60、90、180]。所以位和最大的数是[9, 18, 36, 45, 90, 180],但其中9是更好的数,因为它的值较小。
示例
让我们看下面的实现来更好地理解
def solve(n):div = 1
md = 1
for i in range(2, n + 1):
k = i
if n % i > 0:
continue
s = 0
while k > 0:
s += k % 10
k /= 10
if s > md:
md = s
div = i
return div
n = 180
print(solve(n))
输入
180输出结果
9
以上是 Python程序来找到一个数字的更好的除数 的全部内容, 来源链接: utcz.com/z/355055.html