面试题 14. 剪绳子

LeetCode

题目描述
给你一根长度为 n 的绳子,请把绳子剪成 m 段(m、n 都是整数,n>1 并且 m>1),每段绳子的长度记为 k[0],k[1],···,k[m]。请问 k[0] x k[1] x···x k[m] 可能的最大乘积是多少?例如,当绳子的长度是 8 时,我们把它剪成长度分别为 2、3、3 的三段,此时得到的最大乘积是 18。

Java 实现

class Solution {
    public int integerBreak(int n) {
        if (n == 2) {
            return 1;
        }
        if (n == 3) {
            return 2;
        }
        int product = 1;
        while (n >= 5) {
            product *= 3;
            n -= 3;
        }
        product *= n;
        return product;
    }
}

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-08-03
  • 2021-10-25
  • 2022-02-26
  • 2022-01-09
猜你喜欢
  • 2022-12-23
  • 2021-10-04
  • 2021-08-19
  • 2022-12-23
  • 2021-09-02
相关资源
相似解决方案