Integer Break
2024-08-29 04:32:45
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
最新文章
- POI 解析xls
- php 函数strpos()
- Semiconnected--强连通缩点
- spring mvc实现查询
- 我的android学习经历23
- 简单记事本程序java源码项目
- okhttp 基本介绍
- SQL点滴34—SQL中的大小写
- Highcharts一些属性
- JAVASCRIPT 调用 其他应用程序的方法
- 前端基本知识(三):JS的闭包理解(第一个思考题有错误,已修改)
- 利用zabbix api添加、删除、禁用主机
- Java JTable视图窗口滚动并定位到某一行
- js中this指向、箭头函数
- Windows系统CMD常用命令大全
- execution表达式--小坑
- 使用eclipse构建Maven项目及发布一个Maven项目
- Java中引用的详解
- Control(拆点+最大流)
- 404 Note Found 团队会议纪要