剑指Offer 砍竹子
砍竹子I
题目详情
题目链接
LCR 131. 砍竹子I
思路
这题和整数分解一样,所以我直接按照整数分解的思路来的
class Solution {
public int integerBreak(int n) {
if(n==1)
return 0;
if(n==2)
return 1;
if(n==3)
return 2;
int[] dp = new int[n+1];
dp[0]=0;dp[1]=0;dp[2]=1;dp[3]=2;
int i=4;
for(;i<=n;i++)
for(int j=1;j<i;j++)
dp[i]=Math.max(Math.max(dp[i],j*(i-j)),j*dp[i-j]);
return dp[n];
}
}