Given a positive integer n, break it into the sum of at least two positive integers and maximize the product of those integers. Return the maximum product you can get.

For example, given n = 2, return 1 (2 = 1 + 1); given n = 10, return 36 (10 = 3 + 3 + 4).

Note: you may assume that n is not less than 2.

 public class Solution {
int integerBreak(int n) {
int result=;
double e=2.718281828459;
int breakNumber=(int) (n/e);
if (breakNumber<) {
return n/*(n-n/);
}
for (int i = breakNumber-; i <=breakNumber+; i++) {
int breakValue=n/i;
int valueOverNumber=n%i;
int resultTemp=;
if (valueOverNumber!=) {
resultTemp=(int) ( Math.pow(breakValue, i-valueOverNumber)
* Math.pow(breakValue+, valueOverNumber));
}else {
resultTemp=(int) ( Math.pow(breakValue, i));
} if (resultTemp>result) {
result=resultTemp;
}
}
return result; }
}

由数学计算可以证明已知y=x1+x2+...+xn, z=x1*x2*...xn最大时,应满足x1=x2=...xn=y/n,且分割数n=y/e

Integer Break的更多相关文章

  1. [LeetCode]Integer Break(Dp或胡搞或推公式)

    343. Integer Break Given a positive integer n, break it into the sum of at least two positive intege ...

  2. LN : leetcode 343 Integer Break

    lc 343 Integer Break 343 Integer Break Given a positive integer n, break it into the sum of at least ...

  3. LeetCode 343. 整数拆分(Integer Break) 25

    343. 整数拆分 343. Integer Break 题目描述 给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化. 返回你可以获得的最大乘积. 每日一算法2019/5/2 ...

  4. #Week 11 - 343.Integer Break

    Week 11 - 343.Integer Break Given a positive integer n, break it into the sum of at least two positi ...

  5. 【LeetCode】343. Integer Break 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 数学解法 动态规划 日期 题目地址:https:// ...

  6. [LeetCode] Integer Break 整数拆分

    Given a positive integer n, break it into the sum of at least two positive integers and maximize the ...

  7. Integer Break(Difficulty: Easy)

    题目: Given a positive integer n, break it into the sum of at least two positive integers and maximize ...

  8. (dp)343. Integer Break

    Given a positive integer n, break it into the sum of at least two positive integers and maximize the ...

  9. Leetcode 343. Integer Break

    Given a positive integer n, break it into the sum of at least two positive integers and maximize the ...

随机推荐

  1. 从零开始,教你用Webpack构建React基础工程

    参考 http://www.jianshu.com/p/4df92c335617

  2. 将txt文件转换成EXCEL文件的方法

    地址:http://wenku.baidu.com/view/fcdbe8cca1c7aa00b52acbad.html 1.在EXCEL程序中点击“打开”,将文件类型选择为“文本文件”,找到以前用过 ...

  3. LPC2478调试___ads常见错误分析

    进行ADS外部RAM进行仿真调试过程中,出现常见错误“entry point lies  outside the image" 原因为程序空间超出范围,需要修改一个参数. 解决方法:首先在Z ...

  4. vs2010连接postgresql数据库

    Windows环境C/C++访问PostgreSQL主要有两种方式:利用Qt封装的数据库访问组件.利用PostgreSQL的API函数.使用Qt平台访问PostgreSQL的局限性很大,一旦脱离了访问 ...

  5. 用SQL语句获得一个存储过程返回的表

    1. 定义一个表变量 declare @table table(ReportType nvarchar(30),ReportPath nvarchar(200),ParaCnt int,DataAre ...

  6. 【Python】Celery异步处理

    参考:http://www.cnblogs.com/znicy/p/5626040.html 参考:http://www.weiguda.com/blog/73/ 参考:http://blog.csd ...

  7. 关于.net Microsoft.Office.Interop.Word组建操作word的问题,如何控制word表格单元格内部段落的样式。

    控制word表格单元格内部文字样式.我要将数据导出到word当中,对于word表格一个单元格中的一段文字,要设置不同的样式,比如第一行文字作为标题要居中,加粗,第二行为正常的正文. 代码如下 publ ...

  8. rabbitMQ学习(五)

    topic匹配模式,topic能满足匹配结果就行. 发送端: public class EmitLogTopic { private static final String EXCHANGE_NAME ...

  9. java类型占用字节数&类型转换

    1.整型类型              存储需求     bit数    取值范围      备注int                 4字节           4*8 short         ...

  10. [jv-convert] Error 1,[all-recursive] Error 1

    g++4.6编译是报错: make profiledbootstrap /var/tmp/gcc4/gcc-4.0.1/sparc-sun-solaris2.8/gcc/gcj -B/var/tmp/ ...