题目:原题链接(困难)
标签:数学
解法 | 时间复杂度 | 空间复杂度 | 执行用时 |
---|---|---|---|
Ans 1 (Python) | O ( 1 ) O(1) O(1) | O ( 1 ) O(1) O(1) | 32ms (95.80%) |
Ans 2 (Python) | |||
Ans 3 (Python) |
解法一:
class Solution:
_MOD = 10 ** 9 + 7
# 相当于找n个数,它们的和为primeFactors,求乘积的最大值
def maxNiceDivisors(self, f: int) -> int:
if f == 1:
return 1
a, b = divmod(f, 3)
if b == 0:
return pow(3, a, mod=self._MOD)
elif b == 1:
return pow(3, a - 1, mod=self._MOD) * 4 % self._MOD
else: # b==2
return pow(3, a, mod=self._MOD) * 2 % self._MOD