Integer Break
来源:互联网 发布:linux删除文件权限不够 编辑:程序博客网 时间:2024/05/19 17:49
题目链接
这个题跟编程基本没关系。就是玩数学
public int integerBreak(int n) { if(n==2)return 1; if(n==3)return 2; int m = n/3; int ret = (int)Math.pow(3, m-1); switch(n%3){ case 0: ret *= 3; break; case 1: ret *= 4; break; case 2: ret *= 6; break; } return ret;}
其实把数字拆成尽可能多的3.因为3更加接近于E。所以这样的指数增长最快。
不过要照顾到结尾。如果结尾是1的话那么这个1不会有任何贡献,不如把这个1和之前的3进行相加编程4这样就好得多了。
0 0
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- Integer Break
- [LeetCode]Integer Break
- leetcode笔记:Integer Break
- leetcode--Remove Element
- SocketChannel类(用于阻塞或非阻塞式传输数据) 创建SocketChannel要使用SocketChannel类的静态工厂方法。 SocketChannel open():创建未连接的
- 应用之星:免费的无技术要求的 在线电子书制作平台
- React Native常用组件样式总结
- OpenCV 序列CvSeq
- Integer Break
- [一起学Hive]之六-Hive的动态分区
- 说说Android中的style和theme
- 设计模式C++学习笔记之十二(Command命令模式)
- Torch7深度学习教程(二)
- 添加Page_Init事件
- springMVC dao层中通过反射获取entityClass
- 知识普及之:CSS: body{font-size: 62.5%;}这种写法为什么???
- Mysql学习总结(15)——Mysql错误码大全