zoukankan      html  css  js  c++  java
  • 剑指offer-14-I 剪绳子

    感觉完全是数学题了呀!

    ![image-20210131165926321](C:UserspeekapooAppDataRoamingTypora ypora-user-imagesimage-20210131165926321.png)

    反正看了题解,尽量分成长度为3,余下的视情况调整。

     ![image-20210131170105058](C:UserspeekapooAppDataRoamingTypora ypora-user-imagesimage-20210131170105058.png)

    那这道题的解法就变成了,先求最多能有多少个整的3,然后根据余数,分情况返回。

    需要注意,题目要求至少切一刀。

    那么当长度为2和3时,就需要单独判断。【如上图】

    var cuttingRope = function(n) {
       if(n === 2) return 1;
       if(n === 3) return 2;
       let m = Math.floor(n / 3);
       let yushu = n - m*3;
       switch(yushu){
           case 0:
               return Math.pow(3, m);
           case 1:
               return Math.pow(3, m-1)*4;
           case 2:
               return Math.pow(3, m)*2;
      }
    };

     

  • 相关阅读:
    java中级或者高级面试题分享
    java常使用的框架
    spring的定时器
    ArrayList源码理解
    缓存 Memached
    ORM框架
    Web处理方式
    git使用
    Entity Framework
    .net 学习笔记2
  • 原文地址:https://www.cnblogs.com/peekapoooo/p/14353155.html
Copyright © 2011-2022 走看看