📅  最后修改于: 2023-12-03 15:25:49.867000             🧑  作者: Mango
本程序用于求解2、3和5的最大倍数。
def max_multiple(n):
"""
找到2、3和5的最大倍数。
:param n: 给定的数字
:return: 2、3和5的最大倍数
"""
while n % 5 == 0:
n //= 5
while n % 3 == 0:
n //= 3
while n % 2 == 0:
n //= 2
return n
本程序采用了循环的方式,依次将给定的数字n除以2、3和5,直到无法整除为止。此时n即为2、3和5的最大倍数。
程序的时间复杂度为O(logn),空间复杂度为O(1)。
print(max_multiple(15)) # 输出3
print(max_multiple(60)) # 输出5
print(max_multiple(30)) # 输出5
本程序适用于所有的正整数。