因为3=2+1 2=2*1
存在dp[i]与i的大小关系的不确定性
所以需要先判断二者关系
class Solution:
def integerBreak(self, n: int) -> int:
dp=[0]*(n+1)
dp[1]=1
dp[2]=1
for i in range(3,n+1):
for j in range(1,i):
#因为3=2+1 2=2*1
#存在dp[i]与i的大小关系的不确定性
temp=max(dp[i-j],i-j)
dp[i]=max(dp[i],temp*j)
return dp[-1]