Talentd
FleetCode

343. Integer Break

Medium62.6% acceptance6 companies

Given an integer n, break it into the sum of k positive integers, where k >= 2, and maximize the product of those integers.

Return the maximum product you can get.

Example 1:

Input: n = 2
Output: 1
Explanation: 2 = 1 + 1, 1 × 1 = 1.

Example 2:

Input: n = 10
Output: 36
Explanation: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36.

Constraints:

  • 2 <= n <= 58

Hints open one at a time

Hint 1
There is a simple O(n) solution to this problem.
Hint 2
You may check the breaking results of n ranging from 7 to 10 to discover the regularities.
16:38
Still stuck?Read 4 approaches, or watch a walkthrough.
Open solution
Loading editor…
1class Solution:
2 def integerBreak(self, n: int) -> int:
3
Starter codePython 3Spaces: 4
Examples
Input
2
Input
10
Your code is saved on this device.Solution