343. Integer Break
2017-05-30 22:19
211 查看
又一次的疑惑,为什么动态规划的题目总是数学题,这似乎不关乎算法,而关乎数学推理能力。
首先,我们假设所给的数字n已经被拆分为若干个数字,而决定是否要对已经分好了的数字进行再拆分的条件,就是看这个数字拆分后的乘积是否会大于原数字。
而由一元二次方程可得,但这个数字大于等于5时可以拆分它,拆分后数字乘积会大于原数字。这样就决定了只能将原数字拆分为1,2,3的组合,然而优先拆出3,因为2*2*2的结果要小于3*3。
代码如下:
相关文章推荐
- 343. Integer Break
- 343. Integer Break
- [LeetCode343]Integer Break
- LeetCode 第 343 题 (Integer Break)
- 343. Integer Break
- LeetCode 343 Integer Break
- 343. Integer Break
- 343. Integer Break
- LeetCode 第 343 题 (Integer Break)
- 343. Integer Break
- 343. Integer Break
- 343. Integer Break
- 343. Integer Break
- leetcode 343: Integer Break(C#版)
- 343. Integer Break
- [leetcode-343]Integer Break(java)
- 343. Integer Break
- 343. Integer Break
- 343. Integer Break
- 343. Integer Break