剑指 Offer 14- I. 剪绳子(dp)

在这里插入图片描述
所有的分解最后都会乘2或者乘3

    public int cuttingRope(int n) {
    
    
        if (n == 2) return 1;
        if (n == 3) return 2;
        int dp[] = new int[n+1];
        dp[0] = 1;
        dp[1] = 1;
        dp[2] = 2;
        dp[3] = 3;
        for (int i = 4; i < n+1; i++) {
    
    
            dp[i] = Math.max(dp[i-2]*2,dp[i-3]*3);
        }
        return dp[n];
    }

猜你喜欢

转载自blog.csdn.net/qq_43434328/article/details/115333088