这是一个数学问题。
当number > 3时,绳子的长度尽可能为3
class Solution:
def cutRope(self, number):
if number <= 2:
return 1
if number == 3:
return 2
mod = number % 3
if mod == 1: # 余数为1时,应将1*3分解成2*2
return 4 * (3 ** (number // 3 - 1))
elif mod == 2:
return 2 * (3 ** (number // 3))
else:
return 3 ** (number // 3)
京公网安备 11010502036488号