金山笔试题有大佬能帮我看一下哪里错了吗

有n个苹果,m个桃子,可以把2个苹果和1个桃子组成a元大礼包,也可以把1个苹果和2个桃子组成b元大礼包,求所可能获得的最大价值

function lianxi(n, m, a, b) {
    let maxSum = 0; // 最大价值

    function dp(n, m, sum) {
        if (n <= 1 &amp;&amp; m <= 1) {
            maxSum = Math.max(maxSum, sum);
            return;
        }

        if (n >= 2 &amp;&amp; m >= 1) {
            dp(n - 2, m - 1, sum + a);
        }

        if (n >= 1 &amp;&amp; m >= 2) {
            dp(n - 1, m - 2, sum + b);
        }
    }

    dp(n, m, 0); // 初始时,sum 为 0
    console.log(&quot;所可能获得的最大价值为:&quot; + maxSum);
}

不知道为什么就只过了11%
全部评论
感觉这个代码就默认执行a的选***不到b
点赞 回复 分享
发布于 2024-03-21 21:47 四川

相关推荐

程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务