Skip to content

Latest commit

 

History

History
19 lines (18 loc) · 383 Bytes

343整数拆分.md

File metadata and controls

19 lines (18 loc) · 383 Bytes
func integerBreak(n int) int {
    dp := make([]int, n+1) // dp[i]为整数i的最大拆分乘积
    dp[2] = 1 // dp[0]和dp[1]无意义
    for i := 3; i <= n; i++ {
        for j := 1; j <= i-1; j++ {
            dp[i] = max(dp[i], max(j*(i-j), j*dp[i-j]))
        }
    }
    return dp[n]
}

func max(x, y int) int {
    if x > y {
        return x
    }
    return y
}