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

有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 && m <= 1) {
            maxSum = Math.max(maxSum, sum);
            return;
        }

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

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

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

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

相关推荐

offer小狗:就这样上秋招??
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务