当前位置: 首页 > news >正文

蚌山网站建设新闻最新头条10条

蚌山网站建设,新闻最新头条10条,烟台做网站推广的公司,深圳市住房和建设工程交易剑指 Offer 14- II. 剪绳子 II 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m - 1] 。请问 k[0]k[1]…*k[m - 1] 可能的最大乘积是多少&a…

剑指 Offer 14- II. 剪绳子 II

给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m - 1] 。请问 k[0]k[1]…*k[m - 1] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。

答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。

示例 1:

输入: 2
输出: 1
解释: 2 = 1 + 1, 1 × 1 = 1

贪心法

结论:每次拆成n个3,如果剩下是4,则保留4,然后相乘,但是这个结论需要数学证明其合理性!k神的数学证明

  1. n ≤ 3(2, 3) 时,按照规则应不切分,但由于题目要求必须剪成 m>1段,因此必须剪出一段长度为 1的绳子,即返回 n−1
  2. n = 4时,可以拆分成2+2,返回结果2*2=4
  3. n >4时,减掉多个3之后剩下的n=2, 3, 4, 因为2、3不需要再剪了(剪了反而变小);4剪成2x2是最大的,2x2恰巧等于4一个优秀的解释

注意res对1000000007取余一次,最后的结果也要取余。

class Solution {
public:int cuttingRope(int n) {if(n <= 3) return n - 1;if(n == 4) return 4;long res = 1, p = 1000000007;while(n > 4){res *= 3;res %= p;n -= 3;}// 最后n的值只有可能是:2、3、4。而2、3、4能得到的最大乘积恰恰就是自身值// 因为2、3不需要再剪了(剪了反而变小);4剪成2x2是最大的,2x2恰巧等于4return n * res % p;}
};
http://www.khdw.cn/news/9293.html

相关文章:

  • 张浦专业做网站网络品牌推广
  • 个人网站建设课程网站推广哪家好
  • 海南建设网网站网站优化的方法有哪些
  • 建设网站虚拟主机是啥意思网络营销方案的范文
  • 响应式环保网站模板seo简单速排名软件
  • 海外网站入口网络营销推广公司名称
  • 建设摩托官网网站关键词快速排名优化
  • 该网站想要跳转百度app深圳网络营销和推广渠道
  • hao爱做网站专门制作小程序的公司
  • wordpress三栏中文主题合肥网站seo
  • 西宁做腋臭北大网站l软文网站发布平台
  • 有哪个网站能卖自己做的衣服重庆白云seo整站优化
  • 西安学校网站建设费用注册公司
  • 网站做网站建网站赚钱
  • 王爷追妻有点忙石家庄seo结算
  • 广州设计网站百中搜优化
  • 如何做运营推广北京官网优化公司
  • 香港做电商网站最佳磁力吧cili8
  • 山西省网站建设制作十大免费网站推广入口
  • 申请好域名后 怎么做网站免费推广的网站平台
  • 网站建设管理制度好的搜索引擎推荐
  • 手机上可以做网站吗网站的营销推广方案
  • dw怎么做网站相册seo服务外包客服
  • wordpress如何去掉显示文章的分类杭州seo俱乐部
  • 常州网站外包网址注册查询
  • 做网站首页cdr杭州网站搜索排名
  • 辽宁建设厅南平网站seo
  • 做日历的网站教育培训网站设计
  • 传奇类游戏网站参考消息今天新闻
  • 装饰公司网站建设crm软件