题解 | #剪绳子#

剪绳子

https://www.nowcoder.com/practice/57d85990ba5b440ab888fc72b0751bf8

function cutRope(number)
{
    // write code here
    const cache = new Array(number + 1)
    cache[0] = 0
    cache[1] = 1
    cache[2] = 2
    cache[3] = 3
    cache[4] = 4
    maxCut(number, cache)
    return cache[number]
}

function maxCut(number, cache) {
    if (cache[number]) return cache[number]
    cache[number] = 0
    // 依次尝试减去,取最大乘积
    for (let j = 2; j <= Math.floor(number / 2); j++) {
        cache[number] = Math.max(cache[number], j * maxCut(number - j, cache))
    }
    return cache[number]
}

module.exports = {
    cutRope : cutRope
};

全部评论

相关推荐

不愿透露姓名的神秘牛友
03-10 14:27
已编辑
点赞 评论 收藏
分享
中南民族大学的一名中南民族大学的学生:不敢睁开眼 希望是我的幻觉
点赞 评论 收藏
分享
02-24 17:39
门头沟学院 Java
神哥不得了:神哥来啦~专业技能的话建议不要前面空那么多,八股的话建议先把高频top 50的八股多巩固几遍,千万不要看那些假高频八股。项目的话,建议换两个高质量的项目上去
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务