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

有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 四川

相关推荐

咪咪虫:小厂神人多,我昨天早上那个深圳500-1000人的厂,面试官迟到10分钟进来第一句话是:居然是个妹子,然后一直说自己没有准备什么的,全程八股都是支支吾吾的问。下午那个线下的广州280人的厂,二轮技术面一直在问我数据结构、操作系统、计算机网络,还问我高考多少分、为什么不上课、为什么住在学校外面、是什么时候高考的。。。脸上就是质疑和不屑,俩个体验感奇差
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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